CN114721364A - Mobile robot control method, device, equipment and storage medium - Google Patents

Mobile robot control method, device, equipment and storage medium Download PDF

Info

Publication number
CN114721364A
CN114721364A CN202011529992.9A CN202011529992A CN114721364A CN 114721364 A CN114721364 A CN 114721364A CN 202011529992 A CN202011529992 A CN 202011529992A CN 114721364 A CN114721364 A CN 114721364A
Authority
CN
China
Prior art keywords
boundary point
mobile robot
preset
boundary
value
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.)
Pending
Application number
CN202011529992.9A
Other languages
Chinese (zh)
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.)
Lexy Electric Green Energy Technology Suzhou Co Ltd
Suzhou Kingclean Precision Machinery Co Ltd
Original Assignee
Lexy Electric Green Energy Technology Suzhou Co Ltd
Suzhou Kingclean Precision Machinery 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 Lexy Electric Green Energy Technology Suzhou Co Ltd, Suzhou Kingclean Precision Machinery Co Ltd filed Critical Lexy Electric Green Energy Technology Suzhou Co Ltd
Priority to CN202011529992.9A priority Critical patent/CN114721364A/en
Priority to PCT/CN2021/082536 priority patent/WO2022134336A1/en
Publication of CN114721364A publication Critical patent/CN114721364A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0253Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • 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
    • 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
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0259Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means
    • G05D1/0261Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means using magnetic plots
    • 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
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • 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
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The invention discloses a mobile robot control method, a device, equipment and a storage medium, belonging to the technical field of mobile robots, wherein the method comprises the following steps: when the mobile robot detects a boundary, acquiring a current boundary point; judging whether the mobile robot is in a narrow area or not based on the current boundary point and each boundary point in a boundary point sequence, wherein each boundary point in the boundary point sequence is recorded when the mobile robot detects a boundary each time; adjusting a preset value based on the result of the determination, wherein the preset value is used for indicating that the mobile robot is continuously in the narrow area; determining the rotation angle of the mobile robot according to a preset value, and storing the current boundary point into a boundary point sequence; and controlling the mobile robot to rotate according to the rotation angle. The invention can enable the mobile robot to quickly pass through a narrow area, reduce the waste of time and resources and improve the working efficiency of the mobile robot.

Description

Mobile robot control method, device, equipment and storage medium
Technical Field
The present invention relates to the field of mobile robot technologies, and in particular, to a method, an apparatus, a device, and a storage medium for controlling a mobile robot.
Background
Currently, mobile robots such as lawn mowing robots and cleaning robots are generally rotated at a predetermined angle when entering a specific area, such as an area surrounded by walls, tables, fences, and other obstacles, during operation. However, when the specific area is narrow, the preset angle is usually large, and the mobile robot needs to perform multiple rotation controls to leave the specific area, which not only wastes a lot of time and resources (such as electric quantity), but also seriously affects the working efficiency of the mobile robot.
Disclosure of Invention
The invention provides a mobile robot control method, a mobile robot control device, mobile robot control equipment and a mobile robot storage medium, which can enable a mobile robot to quickly pass through a narrow area, reduce waste of time and resources and improve the working efficiency of the mobile robot.
In one aspect, the present invention provides a mobile robot control method, including:
when the mobile robot detects a boundary, acquiring a current boundary point;
determining whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, wherein each boundary point in the boundary point sequence is recorded each time the mobile robot detects the boundary;
adjusting a preset value based on the judgment result, wherein the preset value is used for indicating that the mobile robot is continuously in the narrow area;
determining the rotation angle of the mobile robot according to the preset value, and storing the current boundary point into the boundary point sequence;
and controlling the mobile robot to rotate according to the rotation angle.
In a possible embodiment, before the determining whether the mobile robot is in the narrow area based on the current boundary point and each boundary point in the boundary point sequence, the method further includes:
judging whether the number of boundary points in the boundary point sequence is greater than or equal to the number of preset boundary points or not;
and if the number of the boundary points is larger than or equal to the preset number of the boundary points, executing the step of judging whether the mobile robot is in a narrow area or not based on the current boundary point and each boundary point in the boundary point sequence.
In another possible embodiment, the determining whether the mobile robot is in a narrow area based on the current boundary point and each boundary point in the boundary point sequence includes:
acquiring a preset number of continuous boundary points of the current boundary point from the boundary point sequence;
and judging whether the mobile robot is in a narrow area or not based on the preset number of continuous boundary points and the current boundary point.
In another possible embodiment, the obtaining a preset number of consecutive boundary points of the current boundary point from the boundary point sequence includes:
acquiring a first boundary point and a second boundary point from the boundary point sequence, wherein the first boundary point is a boundary point recorded when the boundary is detected last time, and the second boundary point is a boundary point recorded when the boundary is detected last time;
correspondingly, the determining whether the mobile robot is in the narrow area based on the preset number of continuous boundary points and the current boundary point includes:
determining a triangular structure by taking the current boundary point, the first boundary point and the second boundary point as vertexes;
determining whether the mobile robot is in the narrow area based on the triangular structure.
In another possible embodiment, the determining whether the mobile robot is in the narrow area based on the triangle structure includes:
in the triangular structure, respectively calculating the distance between the second boundary point and the current boundary point as well as the distance between the second boundary point and the first boundary point to obtain a first distance and a second distance;
determining whether the mobile robot is in the narrow area based on the first distance and the second distance.
In another possible embodiment, the determining whether the mobile robot is in the narrow area based on the first distance and the second distance includes:
judging whether the first distance and the second distance are both smaller than or equal to a first preset threshold value;
if the first distance is greater than the first preset threshold value, or the second distance is greater than the first preset threshold value, it is determined that the mobile robot is not located in the narrow area.
In another possible embodiment, the method further comprises:
if the first distance and the second distance are both smaller than or equal to the first preset threshold, determining an edge formed by a connecting line between the current boundary point and the first boundary point as a reference edge;
calculating the vertical distance from the second boundary point to the reference edge;
judging whether the vertical distance is smaller than a second preset threshold value or not;
if the vertical distance is smaller than the second preset threshold, determining that the mobile robot is in the narrow area;
and if the vertical distance is greater than or equal to the second preset threshold, determining that the mobile robot is not in the narrow area.
In another possible embodiment, if the preset value is a value of a preset counter, the adjusting the preset value based on the result of the determination includes:
if the judged result represents that the mobile robot is in the narrow area, adding a first preset numerical value to the value of the preset counter;
and if the judged result represents that the mobile robot is not in the narrow area, setting the value of the preset counter as a preset initial value.
In another possible embodiment, if the preset value is a value of a preset timer, the adjusting the preset value based on the result of the determination includes:
and if the judged result indicates that the mobile robot is not in the narrow area, resetting the value of the preset timer.
In another possible embodiment, the determining the rotation angle of the mobile robot according to the preset value includes:
determining a preset range matched with the preset value in a preset range set as a target range; wherein each preset range in the preset range set is in inverse proportion to the preset value;
and randomly selecting an angle in the target range as the rotation angle of the mobile robot.
Another aspect provides a mobile robot control apparatus, the apparatus including:
the boundary point acquisition module is used for acquiring a current boundary point when the mobile robot detects a boundary;
a narrow region determination module, configured to determine whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, where each boundary point in the boundary point sequence is recorded when the mobile robot detects the boundary each time;
a preset value adjusting module, configured to adjust a preset value based on a result of the determination, where the preset value is used to indicate that the mobile robot is continuously located in the narrow area;
the angle determining module is used for determining the rotation angle of the mobile robot according to the preset value and storing the current boundary point into the boundary point sequence;
and the control module is used for controlling the mobile robot to rotate according to the rotation angle.
Another aspect provides a control apparatus comprising a processor and a memory, wherein at least one instruction or at least one program is stored in the memory, and the at least one instruction or at least one program is loaded and executed by the processor to implement the mobile robot control method as described above.
Another aspect provides a computer storage medium having at least one instruction or at least one program stored therein, the at least one instruction or the at least one program being loaded and executed by a processor to implement the mobile robot control method as described above.
Due to the technical scheme, the invention has the following beneficial effects:
when a boundary is detected each time, recording boundary points corresponding to the boundary, judging whether the current mobile robot is in a narrow area or not by using the currently detected boundary points and the boundary points of the historical records, and then adjusting a preset value according to a judgment result; the preset value indicates that the mobile robot is continuously located in the narrow area, so that the rotation angle of the mobile robot can be determined more reasonably according to the preset value, the mobile robot can be separated from the narrow area rapidly based on the rotation angle, waste of time and resources is reduced, and working efficiency is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions and advantages of the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 is a schematic diagram of an application environment provided by an embodiment of the present invention.
Fig. 2 is a flowchart illustrating a mobile robot control method according to an embodiment of the present invention.
Fig. 3 is a schematic flowchart of another mobile robot control method according to an embodiment of the present invention.
Fig. 4 is a schematic flowchart of another mobile robot control method according to an embodiment of the present invention.
Fig. 5 is a schematic diagram of a triangle structure formed by selecting continuous boundary points according to an embodiment of the present invention.
Fig. 6 is a schematic flow chart of a narrow region determination according to an embodiment of the present invention.
Fig. 7 is a flowchart illustrating another narrow region determination according to an embodiment of the present invention.
Fig. 8 is an example of a mobile robot control method according to an embodiment of the present invention.
Fig. 9 is a schematic structural block diagram of a mobile robot control device according to an embodiment of the present invention.
Fig. 10 is a schematic diagram of a hardware structure of a control device according to an embodiment of the present invention.
Detailed Description
In order to make the technical solutions of the present invention better understood, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without any inventive step based on the embodiments of the present invention, are within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or server that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Referring to fig. 1, a schematic diagram of an application environment according to an embodiment of the present invention is shown, and a mowing robot is taken as an example in fig. 1 to perform a mowing task. As shown in fig. 1, the application environment may include a mowing robot 1, a boundary line 2, and an obstacle 3, where the mowing robot 1 performs mowing tasks in a working area 4 surrounded by the boundary line 2, and the obstacle 3 is an object such as a pantry, a fence, and a wall that obstructs the travel of the mowing robot.
When the mowing robot 1 is started, a counter is started to record the situation that the mowing robot is continuously located in a narrow area; recording boundary points when the boundary is detected each time in the advancing process, and determining whether the current boundary points are in a narrow area or not according to the current boundary points and the boundary points of the historical records; adjusting the value of the counter according to the determination result of the narrow area; the angle of rotation required is then determined based on the value of the counter.
As shown in fig. 1, the mowing robot 1 travels along a pre-planned travel path during execution of a mowing task. In the driving process, firstly detecting the boundary of the obstacle 3, recording a boundary point A, wherein the current history record does not contain any boundary point, selecting a rotation angle by the mowing robot 1 according to a default mode, and storing the boundary point A into the history record; then, detecting the boundary of the boundary line 2, recording a boundary point B, determining whether the boundary point A is in a narrow area according to the boundary point A and the boundary point B, adjusting the value of a counter according to the narrow area determination result, selecting a rotation angle based on the value of the counter, and storing the boundary point B in the history record, wherein the boundary point A is stored in the current history record; then, the boundary of the boundary line 2 is detected, a boundary point C is recorded, the boundary point a and the boundary point B are stored in the current history, whether the current history is in the narrow region or not can be determined according to the boundary point a, the boundary point B and the boundary point C, the value of the counter is adjusted according to the narrow region determination result, the rotation angle is selected based on the value of the counter, and the boundary point C is stored in the history.
The rotation angle of the mowing robot is determined by recording historical boundary points, determining whether the mowing robot is in a narrow area or not and determining the situation of continuous narrow area, so that the situation that the mowing robot cannot be quickly separated from the narrow area due to the fact that the mowing robot cannot select a proper rotation angle when the mowing robot is in the narrow area for a long time can be prevented, and mowing efficiency of the mowing robot is affected.
It should be noted that fig. 1 is merely an example. In some embodiments, the lawn mowing robot may also be other types of mobile robots, such as cleaning robots and the like.
In practical applications, various regular or irregular obstacles may exist in the working area of the mobile robot, which requires that the mobile robot can quickly adapt to the complex environment formed by the different obstacles, so as to complete the work task as soon as possible. For example, more and more families choose to use the mowing robot to trim the lawn, but the lawn areas, layouts and furnishings of different families are various, so that the mowing robot is required to be more intelligent and finish trimming of the lawn more quickly.
However, there are often long narrow passages or narrow areas in the lawn, and the mowing robot cannot be quickly detached after entering the areas, and spends a large amount of time and electricity therein to mow, which greatly affects the overall lawn mowing efficiency and also wastes time and energy.
Therefore, when the mobile robot is used for performing a work task, due to the existence of various boundary lines or obstacles, a plurality of areas with different sizes can appear, and how to quickly determine whether the areas are narrow areas or not and quickly leave the narrow areas can have a crucial influence on the completion of the work task by the mobile robot.
Based on the above description, in order to accurately determine whether the mobile robot is in a narrow area, and when the mobile robot is in the narrow area, the mobile robot can quickly pass through the narrow area, thereby reducing waste of time and resources and improving the working efficiency of the mobile robot, embodiments of the present invention provide a mobile robot control method.
Fig. 2 is a flow chart of a mobile robot control method according to an embodiment of the present invention, and the present specification provides the method operation steps as described in the embodiment or the flow chart, but more or less operation steps may be included based on conventional or non-inventive labor. The order of steps recited in the embodiments is merely one manner of performing the steps in a multitude of orders and does not represent the only order of execution. In actual system or server product execution, sequential execution or parallel execution (e.g., parallel processor or multithreaded processing environments) may occur according to the embodiments or methods shown in the figures. Specifically, as shown in fig. 2, the method may include:
s201, when the mobile robot detects the boundary, acquiring a current boundary point.
In the embodiment of the present invention, the mobile robot is a machine device that automatically performs work, the boundary is a boundary line that obstructs the travel of the mobile robot and an edge of various obstacles, and the current boundary point is used to indicate the position of the detected boundary, such as the boundary point a, the boundary point B, and the boundary point C in fig. 1. The boundary line may be physical, such as a wall, fence, etc., or may be an electromagnetic line, etc.
In specific implementation, as shown in fig. 1, a reference coordinate system may be established with a central point position of the mobile robot when the mobile robot is started as an origin, a current orientation of the mobile robot as a positive y-axis direction, and a direction perpendicular to the y-axis direction as an x-axis direction, and coordinates of a current boundary point may be obtained based on the reference coordinate system. It can be understood that, for a mobile robot with a gyroscope installed, coordinates of a current boundary point may also be determined based on an offset of the gyroscope, and the present specification does not specifically limit an acquisition manner of the current boundary point.
S202, determining whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, where each boundary point in the boundary point sequence is recorded when the mobile robot detects the boundary each time.
And recording the corresponding boundary point every time the boundary is detected in the working process of the mobile robot, and storing the boundary point into the boundary point sequence. The number of boundary points in the sequence of boundary points may be determined before determining whether the mobile robot is in a narrow area based on the current boundary point and each boundary point in the sequence of boundary points. And if the number of the boundary points is less than the number of the preset boundary points, randomly selecting an angle from the default range as the rotation angle of the mobile robot. Generally, the default range is a range preset by a program to avoid collision with the boundary, for example, between 60 degrees and 120 degrees.
If the number of the boundary points in the boundary point sequence is greater than or equal to the preset number of the boundary points, step S02 is executed, and whether the mobile robot is in the narrow area is determined based on the current boundary point and each boundary point in the boundary point sequence.
Specifically, referring to fig. 3, step S202 may include:
s2021, obtaining the continuous boundary points with the preset number from the current boundary point sequence.
In the embodiment of the present invention, the continuous boundary points refer to boundary points recorded when a boundary is continuously detected. For example, if C is usediIndicating the boundary point recorded when the boundary is detected for the ith time, the current boundary point being represented by CnIs shown, then CnThe front preset number of continuous boundary points of then-1、Cn-2、Cn-3、Cn-4…. If the preset number of continuous boundary points is determined as a boundary point sequence, assuming that the 9 th boundary is detected currently, the current boundary point can be C9That is, if the preset number is 6, the boundary point sequence consisting of the boundary points recorded when the boundary was detected for the first 6 times is { C }8,C7,C6,C5,C4,C3}。
S2022, determining whether the mobile robot is in the narrow area based on the preset number of consecutive boundary points and the current boundary point.
Since each boundary point is recorded each time a boundary is detected, if the recorded boundary point is far away from the current time interval, the boundary point will not have a reference value, and the boundary point can be eliminated. In view of this, step S2022 may include: forming a boundary point sequence by the preset number of continuous boundary points, and acquiring the current time; adding the current time and a preset time interval value to obtain reference time; comparing the recording time corresponding to each boundary point with the reference time in the boundary point sequence; if the recording time is earlier than the reference time, removing the boundary point from the boundary point sequence to obtain a target sequence; and judging whether the mobile robot is in a narrow area or not according to each boundary point in the target sequence.
In specific implementation, the number of boundary points in the target sequence can be counted, and if the number of the boundary points is greater than a set threshold value, the mobile robot can be judged to be in a narrow area; if the number of boundary points is less than or equal to the set threshold, it can be determined that the mobile robot is not in/out of the narrow area.
In addition, in some embodiments, the previous two consecutive boundary points may be directly selected to combine with the current boundary point, so as to determine whether the mobile robot is in the narrow area. Referring to fig. 4, step S2021 may include:
s20211, obtaining a first boundary point and a second boundary point from the boundary point sequence, where the first boundary point is a boundary point recorded when the boundary is last detected, and the second boundary point is a boundary point recorded when the boundary is last detected.
Accordingly, step S2022 may include:
s20221, determining a triangle structure by using the current boundary point, the first boundary point, and the second boundary point as vertices.
S20222, determining whether the mobile robot is in the narrow region based on the triangular structure.
It is understood that the first boundary point and the second boundary point may also be obtained from the target sequence after the time-lapse screening. In other words, when the recording time corresponding to the first boundary point and the second boundary point is later than the reference time, whether the robot is in the narrow area is determined according to the triangular structure formed by the current boundary point, the first boundary point and the second boundary point.
As shown in FIG. 5, if C is usednIf the current boundary point is represented, the selected first boundary point is Cn-2The second boundary point is Cn-1From C to Cn、Cn-2And Cn-1Triangles Δ C determined for the verticesnCn-2Cn-1To determine whether the mobile robot is in a narrow area.
As shown in fig. 6, step S20222 may include:
s202221, in the triangle structure, respectively calculating distances between the second boundary point and the current boundary point and the first boundary point to obtain a first distance and a second distance.
The triangle structure in FIG. 5 is based on the second boundary point Cn-1Current boundary point CnAnd a first boundary point Cn-2Can respectively calculate the edge C by the Helen formulanCn-1And an edge Cn-1Cn-2To obtain a first distance d1And a second distance d2
S202222, determining whether the mobile robot is in the narrow area based on the first distance and the second distance.
In this embodiment of the present invention, as shown in fig. 7, step S202222 may include:
s701, judging whether the first distance is smaller than or equal to a first preset threshold value.
If the first distance is greater than the first preset threshold, executing step S706; if the first distance is less than or equal to the first preset threshold, step S702 is executed.
S702, judging whether the second distance is less than or equal to a first preset threshold value.
If the second distance is greater than the first preset threshold, executing step S706; if the second distance is less than or equal to the first preset threshold, step S703 is executed.
And S703, determining an edge formed by a connecting line between the current boundary point and the first boundary point as a reference edge.
S704, calculating the vertical distance from the second boundary point to the reference edge.
S705, judging whether the vertical distance is smaller than a second preset threshold value.
If the vertical distance is greater than or equal to the second preset threshold, executing step S706; if the vertical distance is less than or equal to the second preset threshold, step S707 is executed.
S706, it is determined that the mobile robot is not located in the narrow area.
And S707, judging that the mobile robot is in a narrow area.
For example, referring to FIG. 5, the first distance is edge CnCn-1Side length d of1The second distance is the side Cn-1Cn-2Side length d of2As long as d1And d2If any one of the boundary points is larger than the first preset threshold value, it indicates that there is enough space between the two boundary points to allow the mobile robot to pass through, and thus it is determined that the mobile robot is not located in the narrow area. If d is1And d2Are all less than or equal to the first preset threshold value due to the second boundary point Cn-1As an intermediate point, a second boundary point C can be passedn-2To edge CnCn-2And determining whether the mobile robot is in a narrow area. If h is greater than or equal to the second predetermined threshold, h can be considered perpendicular to the edge CnCn-2When the lateral distance is sufficiently large, the region is also constructed enough to pass the mobile robot, and it is determined that the mobile robot is not in the narrow region.
S203, adjusting a preset value based on the judgment result, wherein the preset value is used for indicating that the mobile robot is continuously in the narrow area.
In the embodiment of the invention, the preset value comprises a value of a preset counter and a value of a preset timer, when the mobile robot starts to work, the preset counter or the preset timer is started, and after the narrow area is judged to be finished each time, the value of the preset counter or the value of the preset timer is adjusted based on a judgment result.
Specifically, if the preset value is a value of a preset counter, step S203 may include: if the judged result represents that the mobile robot is in the narrow area, adding a first preset numerical value to the value of the preset counter; and if the judged result represents that the mobile robot is not in the narrow area, setting the value of the preset counter as a preset initial value.
The first preset value may be any fixed value or a value determined according to a preset calculation manner, and may be set to 1. Once it is detected that the mobile robot is not in the stenosis region, i.e. the mobile robot is out of the stenosis region, the value of the preset counter is restored to the initial state, e.g. to zero. It is understood that the larger the value of the preset counter, the longer the mobile robot is in the narrow area, and when the preset initial value is 0 and the first preset value is 1, the preset counter may represent the number of times the mobile robot is continuously in the narrow area.
Further, if the preset value is a value of a preset timer, step S203 may further include: and if the judged result indicates that the mobile robot is not in the narrow area, resetting the value of the preset timer. That is, when the judgment result indicates that the mobile robot is in the narrow area, the timer is preset to continue timing operation; otherwise, the value of the preset timer is reset to the initial state, i.e. to zero.
S204, determining the rotation angle of the mobile robot according to the preset value, and storing the current boundary point into the boundary point sequence.
Specifically, step S204 may include: determining a preset range matched with the preset value in a preset range set as a target range; wherein each preset range in the preset range set is in inverse proportion to the preset value; and randomly selecting an angle in the target range as the rotation angle of the mobile robot.
In the embodiment of the invention, the inverse relation between the preset range and the preset value means that the larger the preset value is, the larger the minimum angle and the maximum angle of the preset range are, and the smaller the preset value is, the smaller the minimum angle and the maximum angle of the preset range are. The preset ranges are collectively stored with preset ranges corresponding to different preset values (including values of the preset counter and values of the preset timer), and each preset range can be set according to a specific application environment. Taking the value of the preset counter as an example, if the preset initial value is 0, and the step length increased each time, that is, the first preset value is 1, in the specific implementation, each preset range may be set as shown in the following table:
presetting the value of a counter Preset range
0 (60°,90°)
1 (45°,75°)
2 (30°,60°)
Greater than or equal to 3 (15°,45°)
That is, if the mobile robot is not located in a narrow area, the range of the rotation angle is randomly selected to be (60 °,90 °); if the mobile robot is in the narrow area for 1 time continuously, randomly selecting the range of the rotation angle to be (45 degrees and 75 degrees); if the mobile robot is in the narrow area for 2 times, randomly selecting the range of the rotation angle to be (30 degrees and 60 degrees); if the narrow region is formed for 3 or more consecutive times, the range of the rotation angle is randomly selected to be (15 °,45 °).
It can be understood that the larger the preset value is, the higher the probability that the mobile robot is in the narrow area for a long time is, and if the value of the rotation angle is too large, the rotation of the mobile robot may be controlled for many times, so that the mobile robot can be separated from the narrow area. Thus, the preset range is in inverse proportion to the preset value, i.e. the larger the preset value is, the larger the minimum and maximum values of the preset range are. As in the above table, when the value of the preset counter is 0, the minimum angle of the preset range is 60 ° and the maximum value is 90 °; when the value of the preset counter is 1, the minimum angle of the preset range is 45 degrees, and the maximum value is 75 degrees; when the value of the preset counter is 2, the minimum angle of the preset range is 30 degrees, and the maximum value is 60 degrees; when the value of the preset counter is greater than or equal to 3, the minimum angle of the preset range is 15 ° and the maximum value is 45 °.
It should be noted that the preset range corresponding to the value of each preset counter in the above table is only an example, and is not used to limit the embodiment of the present invention.
And S205, controlling the mobile robot to rotate according to the rotation angle.
The following describes the mobile robot control method according to the present invention in detail, taking a mowing robot as an example.
As shown in fig. 8, which is an example of a mobile robot control method according to an embodiment of the present invention. In fig. 8, there is a regular flower bed in the working area, the distance from the border line of the width edge of the bed is 200cm, and the distance from the border line of the length edge of the bed is 80 cm.
Assuming a preset value as a preset counterThe first preset threshold is 5m (the threshold of the side length of the triangle), the second preset threshold is 1m (the threshold of the vertical distance), the preset initial value of the preset counter is 0, the step length of each increment of the preset counter, namely the first preset value, is 1, the number of the preset boundary points is 2 (the threshold of the number of the boundary points in the boundary point sequence), and the preset number is 2 (the number of the continuous boundary points selected from the boundary point sequence). S is the starting point of the mowing robot for executing mowing task, C1、C2、C2、C3、C4、C5、C6、C7、C8、C9、C10And C11For each boundary point detected during the performance of a mowing task.
The robot mower starts working at the S position, and sets the value of a preset counter to a preset initial value (0).
When the boundary is detected for the first time, recording the current boundary point C1The number of boundary points in the boundary point sequence is 0, the boundary points are smaller than the number of preset boundary points (2), the value of a preset counter is 0, an angle is randomly selected within the range of (60 degrees and 90 degrees) as a rotation angle to control the rotation of the mowing robot, and C is used1Is added into the boundary point sequence, and the boundary point sequence is C1}。
When the boundary is detected for the second time, recording the current boundary point C2The number of boundary points in the boundary point sequence is 1, the boundary points are smaller than the number of preset boundary points (2), the value of a preset counter is 0, an angle is randomly selected within the range of (60 degrees and 90 degrees) as a rotation angle to control the rotation of the mowing robot, and C is used2Is added into the boundary point sequence, and the boundary point sequence is C1,C2}。
When the boundary is detected for the third time, recording the current boundary point C3The number of boundary points in the boundary point sequence is 2, which is equal to the number of preset boundary points (2), and then the boundary points C which are continuous in the first two times are obtained from the boundary point sequence1And C2And is composed of C1、C2And C3Triangle delta C with three points as vertexes1C2C3It is determined whether the mowing robot is in a narrow area.
In the determination of the narrow region, the judgment result C is first determined1And C2Length of side formed by the line connecting two points, and C2And C3Whether the side lengths formed by the two points are both smaller than or equal to a first preset threshold (5m) or not. If any one of the two is larger than 5m, judging that the narrow area is not positioned, and setting the value of a preset counter as a preset initial value (0); if both are less than or equal to 5m, the boundary point C is obtained2To from C1And C3The vertical distance of the side length formed by the connecting line of the two points; if the vertical distance is smaller than a second preset threshold value (1m), judging that the narrow area is located, and adding a first preset numerical value (1) to the value of a preset counter; if the vertical distance is greater than or equal to 1m, it is determined that it is not in the narrow area, and the value of the preset counter is set to a preset initial value (0).
If the mobile robot is not in the narrow area as the judgment result at this time, namely the value of the preset counter is 0, randomly selecting an angle within the range of (60 degrees and 90 degrees) as a rotation angle to control the rotation of the mowing robot, and controlling the mowing robot to rotate by using C3Is added into the boundary point sequence, and the boundary point sequence is C1,C2,C3}。
According to the steps, whether the boundary is in the narrow area or not is sequentially judged each time the boundary is detected, then the value of the preset counter is adjusted according to the judgment result, and the range of the rotating angle is selected based on the value of the preset counter, so that the rotation of the mowing robot is controlled.
If the boundary is detected for the fourth, fifth, and sixth times, it is determined that the mobile robot is not in the narrow area, that is, the value of the preset counter is 0.
When the boundary is detected for the seventh time, the boundary point sequence is { C }1,C2,C3,C4,C5,C6}, the current boundary point is C7In the presence of C5、C6And C7Triangle delta C with three points as vertexes5C6C7In, C6To edge C5C7Is less than 1m, the mower is judgedThe robot is in a narrow area and thus increments the preset counter by 1. Namely, the value of the preset counter is 1, an angle is randomly selected within a range of (45 degrees and 75 degrees) to be used as a rotation angle to control the mowing robot to rotate.
When the boundary is detected for the eighth time, based on the result of C6、C7And C8Triangle delta C with three points as vertexes6C7C8It is determined that the mowing robot is in a narrow area, and since the flower bed is at a distance of 80cm from the boundary line, the vertical distance is surely smaller than 1m, and thus the value of the preset counter is increased by 1. Namely, the value of the preset counter is 2, an angle is randomly selected within the range of (30 degrees and 60 degrees) to be used as a rotation angle to control the mowing robot to rotate.
When the boundary is detected for the ninth time and the tenth time, the mowing robot is judged to be in the narrow area, the condition that the value of the preset counter is greater than or equal to 3 is met, and an angle is randomly selected within the range of (15 degrees and 45 degrees) to serve as a rotation angle to control the mowing robot to rotate.
When the boundary is detected for the eleventh time, because of C10To from C9And C11The vertical distance of the side formed by the two connecting lines is larger than 1m, the mowing robot is judged to be separated from the narrow area, and therefore the value of the preset counter is set as the preset initial value (0). And based on the value of a preset counter, randomly selecting an angle within the range of (60 degrees and 90 degrees) as a rotation angle to control the rotation of the mowing robot.
In the above example, the mowing robot records the position of the boundary point corresponding to each time the boundary is detected during mowing. When the number of the recorded boundary points is larger than or equal to a set value, selecting the boundary point C corresponding to the current boundary point CnFirst two consecutive boundary points Cn-2And Cn-1Respectively calculate boundary points Cn-1And boundary point CnAnd boundary point Cn-2Length d of the edge formed by the connecting line1And d2. If d is1And d2If any one of the values is larger than the first preset threshold value, the mowing robot is judged to be separated from or not in the narrow area; if d is1And d2Are all less than or equal to a first preset threshold valueThen calculate the boundary point Cn-1To the boundary point CnAnd boundary point Cn-2The vertical distance h of the edge formed by the connecting line. If h is smaller than a second preset threshold value, judging that the mowing robot is in a narrow area; and if h is greater than or equal to a second preset threshold value, judging that the mowing robot is separated from/not in the narrow area.
Adding 1 to the value of a preset counter each time the mowing robot is judged to be in the narrow area; once it is determined that the mowing robot is out of/not in the narrow area, the value of the preset counter is cleared. Then, based on the value of the preset counter, a preset angle range is selected, and an angle is randomly selected from the angle range as the rotation angle of the mobile robot.
It should be noted that the preset values such as the first preset threshold, the second preset threshold, and the preset range are related to the working environment of the mowing robot, so that in practical applications, various preset values provided in the embodiments of the present invention may be set according to the specific implementation environment, and are not limited specifically herein.
According to the technical scheme provided by the embodiment, when the boundary is detected each time, the boundary point corresponding to the boundary is recorded, whether the current mobile robot is in a narrow area or not is judged by using the currently detected boundary point and the boundary point of the historical record, and then the preset value is adjusted according to the judged result; the preset value indicates that the mobile robot is continuously located in the narrow area, so that the rotation angle of the mobile robot can be determined more reasonably according to the preset value, the mobile robot can be separated from the narrow area rapidly based on the rotation angle, waste of time and resources is reduced, and working efficiency is improved.
An embodiment of the present invention further provides a mobile robot control apparatus, as shown in fig. 9, the apparatus may include:
a boundary point obtaining module 910, configured to obtain a current boundary point when the mobile robot detects a boundary;
a narrow region determination module 920, configured to determine whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, where each boundary point in the boundary point sequence is recorded when the mobile robot detects the boundary each time;
a preset value adjusting module 930, configured to adjust a preset value based on a result of the determination, where the preset value is used to indicate that the mobile robot is continuously located in the narrow area;
an angle determining module 940, configured to determine a rotation angle of the mobile robot according to the preset value, and store the current boundary point into the boundary point sequence;
a control module 950 configured to control the mobile robot to rotate according to the rotation angle.
In one possible embodiment, the apparatus may further include:
and the boundary point number determining module is used for judging whether the number of the boundary points in the boundary point sequence is greater than or equal to the number of preset boundary points.
In one possible implementation, the narrow region determining module 920 may include:
the first boundary point selecting unit is used for acquiring the boundary points with continuous pre-set number from the boundary point sequence;
and the first judging unit is used for judging whether the mobile robot is in a narrow area or not based on the preset number of continuous boundary points and the current boundary point.
In one possible embodiment, the first boundary point selecting unit may include:
and the second boundary point selecting unit is used for acquiring a first boundary point and a second boundary point from the boundary point sequence, wherein the first boundary point is a boundary point recorded when the boundary is detected last time, and the second boundary point is a boundary point recorded when the boundary is detected last time.
Accordingly, the first determination unit may include:
a structure determining unit, configured to determine a triangle structure with the current boundary point, the first boundary point, and the second boundary point as vertices;
a second determination unit configured to determine whether the mobile robot is in the narrow area based on the triangular structure.
In another possible embodiment, the second determination unit may include:
a side length calculating unit, configured to calculate distances between the second boundary point and the current boundary point and between the second boundary point and the first boundary point in the triangle structure, respectively, so as to obtain a first distance and a second distance;
a third determination unit configured to determine whether the mobile robot is in the narrow area based on the first distance and the second distance.
In another possible embodiment, the third determination unit may include:
the side length judging unit is used for judging whether the first distance and the second distance are both smaller than or equal to a first preset threshold value;
a first result processing unit, configured to determine that the mobile robot is not located in the narrow area when the first distance is greater than the first preset threshold, or when the second distance is greater than the first preset threshold.
A reference edge determining unit, configured to determine, as a reference edge, an edge formed by a connection line between the current boundary point and the first boundary point when both the first distance and the second distance are smaller than or equal to the first preset threshold;
the vertical distance judging unit is used for judging whether the vertical distance is smaller than a second preset threshold value or not;
a second result processing unit, configured to determine that the mobile robot is in the narrow area when the vertical distance is smaller than the second preset threshold;
and the third result processing unit is used for judging that the mobile robot is not in the narrow area under the condition that the vertical distance is greater than or equal to the second preset threshold value.
In this embodiment, the preset value may include a value of a preset counter and a value of a preset timer.
In another possible embodiment, in the case that the preset value is a value of a preset counter, the preset value adjusting module 930 may include:
an increasing unit, configured to add a first preset value to the value of the preset counter when the result of the determination indicates that the mobile robot is in the narrow area;
and the recovery unit is used for setting the value of the preset counter as a preset initial value under the condition that the judged result represents that the mobile robot is not in the narrow area.
In another possible embodiment, in the case that the preset value is a value of a preset timer, the preset value adjusting module 930 may include:
a resetting unit, configured to reset a value of the preset timer if the result of the determination indicates that the mobile robot is not located in the narrow area.
In another possible embodiment, the angle determining module 940 may include:
the angle range determining unit is used for concentrating a preset range and determining the preset range matched with the preset value as a target range; wherein each preset range in the preset range set is in inverse proportion to the preset value;
and the angle selecting unit is used for randomly selecting an angle in the target range as the rotating angle of the mobile robot.
It should be noted that, when the apparatus provided in the foregoing embodiment implements the functions thereof, the division of each functional module is merely used as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided by the above embodiments belong to the same concept, and specific implementation processes thereof are described in the method embodiments for details, which are not described herein again.
The embodiment of the present invention further provides a control device, which is characterized by comprising a processor and a memory, where the memory stores at least one instruction or at least one program, and the at least one instruction or the at least one program is loaded and executed by the processor to implement the mobile robot control method provided in the foregoing method embodiment.
Further, fig. 10 is a schematic diagram illustrating a hardware structure of a control device provided in an embodiment of the present invention, which may participate in forming or incorporating the mobile robot control apparatus provided in an embodiment of the present invention. As shown in fig. 10, the control device 10 may include one or more (shown as 1002a, 1002b, … …, 1002 n) processors 1002 (the processors 1002 may include, but are not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 1004 for storing data, and a transmission device 1006 for communication functions. Besides, the method can also comprise the following steps: an input/output interface (I/O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of the I/O interface), a network interface, a power source, and/or a camera. It will be understood by those skilled in the art that the structure shown in fig. 10 is merely an illustration and is not intended to limit the structure of the control device. For example, the control device 10 may also include more or fewer components than shown in FIG. 10, or have a different configuration than shown in FIG. 10.
It should be noted that the one or more processors 1002 and/or other data processing circuitry described above may be referred to generally herein as "data processing circuitry". The data processing circuitry may be embodied in whole or in part in software, hardware, firmware, or any combination thereof. Further, the data processing circuit may be a single stand-alone processing module, or incorporated, in whole or in part, into any of the other elements in the control device 10 (or mobile device). As referred to in the embodiments of the invention, the data processing circuit acts as a processor control (e.g. selection of a variable resistance termination path connected to the interface).
The memory 1004 may be used for storing software programs and modules of application software, such as program instructions/data storage devices corresponding to the method according to the embodiment of the present invention, and the processor 1002 executes various functional applications and data processing by running the software programs and modules stored in the memory 1004, so as to implement the above-mentioned mobile robot control method. The memory 1004 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 1004 may further include memory located remotely from the processor 1002, which may be connected to the control device 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 1006 is used for receiving or sending data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the control device 10. In one example, the transmission device 1006 includes a network adapter (NIC) that can be connected to other network devices through a base station so as to communicate with the internet. In one embodiment, the transmission device 1006 may be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
The embodiment of the present invention further provides a storage medium, which may be disposed in the control device to store at least one instruction or at least one program for implementing a mobile robot control method in the method embodiment, where the at least one instruction or the at least one program is loaded and executed by the processor to implement the mobile robot control method provided in the method embodiment.
Alternatively, in this embodiment, the storage medium may be located in at least one network server of a plurality of network servers of a computer network. Optionally, in this embodiment, the storage medium may include, but is not limited to: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
It should be noted that: the precedence order of the above embodiments of the present invention is only for description, and does not represent the merits of the embodiments. And specific embodiments thereof have been described above. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The embodiments in the present specification are described in a progressive manner, and the same and similar parts among the embodiments are referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the device and electronic apparatus embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference may be made to some descriptions of the method embodiments for relevant points.
The foregoing description has disclosed fully preferred embodiments of the present invention. It should be noted that those skilled in the art can make modifications to the embodiments of the present invention without departing from the scope of the appended claims. Accordingly, the scope of the appended claims is not to be limited to the specific embodiments described above.

Claims (10)

1. A mobile robot control method, characterized in that the method comprises:
when the mobile robot detects a boundary, acquiring a current boundary point;
determining whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, wherein each boundary point in the boundary point sequence is recorded each time the mobile robot detects the boundary;
adjusting a preset value based on the judgment result, wherein the preset value is used for indicating that the mobile robot is continuously in the narrow area;
determining the rotation angle of the mobile robot according to the preset value, and storing the current boundary point into the boundary point sequence;
and controlling the mobile robot to rotate according to the rotation angle.
2. The method of claim 1, further comprising, prior to said determining whether the mobile robot is in a stenosis region based on the current boundary point and each boundary point in the sequence of boundary points:
judging whether the number of boundary points in the boundary point sequence is greater than or equal to the number of preset boundary points or not;
and if the number of the boundary points is larger than or equal to the preset number of the boundary points, executing the step of judging whether the mobile robot is in a narrow area or not based on the current boundary point and each boundary point in the boundary point sequence.
3. The method according to claim 1 or 2, wherein the determining whether the mobile robot is in a narrow area based on the current boundary point and each boundary point in the sequence of boundary points comprises:
acquiring a preset number of continuous boundary points of the current boundary point from the boundary point sequence;
and judging whether the mobile robot is in a narrow area or not based on the preset number of continuous boundary points and the current boundary point.
4. The method according to claim 3, wherein the obtaining a preset number of consecutive boundary points of the current boundary point from the boundary point sequence comprises:
acquiring a first boundary point and a second boundary point from the boundary point sequence, wherein the first boundary point is a boundary point recorded when the boundary is detected last time, and the second boundary point is a boundary point recorded when the boundary is detected last time;
correspondingly, the determining whether the mobile robot is in the narrow area based on the preset number of continuous boundary points and the current boundary point includes:
determining a triangular structure by taking the current boundary point, the first boundary point and the second boundary point as vertexes;
determining whether the mobile robot is in the narrow area based on the triangular structure.
5. The method of claim 4, wherein the determining whether the mobile robot is in the stenosis region based on the triangular structure comprises:
in the triangular structure, respectively calculating the distance between the second boundary point and the current boundary point as well as the distance between the second boundary point and the first boundary point to obtain a first distance and a second distance;
determining whether the mobile robot is in the narrow area based on the first distance and the second distance;
preferably, the determining whether the mobile robot is located in the narrow area based on the first distance and the second distance includes:
judging whether the first distance and the second distance are both smaller than or equal to a first preset threshold value;
if the first distance is greater than the first preset threshold value, or the second distance is greater than the first preset threshold value, determining that the mobile robot is not located in the narrow area;
preferably, the method further comprises:
if the first distance and the second distance are both smaller than or equal to the first preset threshold, determining an edge formed by a connecting line between the current boundary point and the first boundary point as a reference edge;
calculating the vertical distance from the second boundary point to the reference edge;
judging whether the vertical distance is smaller than a second preset threshold value or not;
if the vertical distance is smaller than the second preset threshold, determining that the mobile robot is in the narrow area;
and if the vertical distance is greater than or equal to the second preset threshold, determining that the mobile robot is not in the narrow area.
6. The method according to claim 1 or 2, wherein if the predetermined value is a value of a predetermined counter, the adjusting the predetermined value based on the determination result comprises:
if the judged result represents that the mobile robot is in the narrow area, adding a first preset numerical value to the value of the preset counter;
if the judged result represents that the mobile robot is not in the narrow area, setting the value of the preset counter as a preset initial value;
if the preset value is a value of a preset timer, adjusting the preset value based on the judged result, including:
and if the judged result indicates that the mobile robot is not in the narrow area, resetting the value of the preset timer.
7. The method according to claim 1 or 2, wherein the determining the rotation angle of the mobile robot according to the preset value comprises:
determining a preset range matched with the preset value in a preset range set as a target range; wherein each preset range in the preset range set is in inverse proportion to the preset value;
and randomly selecting an angle in the target range as the rotation angle of the mobile robot.
8. A mobile robot control apparatus, characterized in that the apparatus comprises:
the boundary point acquisition module is used for acquiring a current boundary point when the mobile robot detects a boundary;
a narrow region determination module, configured to determine whether the mobile robot is in a narrow region based on the current boundary point and each boundary point in a boundary point sequence, where each boundary point in the boundary point sequence is recorded when the mobile robot detects the boundary each time;
a preset value adjusting module, configured to adjust a preset value based on the determination result, where the preset value is used to indicate that the mobile robot is continuously located in the narrow area;
the angle determining module is used for determining the rotation angle of the mobile robot according to the preset value and storing the current boundary point into the boundary point sequence;
and the control module is used for controlling the mobile robot to rotate according to the rotation angle.
9. A control device comprising a processor and a memory, wherein at least one instruction or at least one program is stored in the memory, and the at least one instruction or the at least one program is loaded and executed by the processor to implement the mobile robot control method according to any one of claims 1 to 7.
10. A computer storage medium, characterized in that at least one instruction or at least one program is stored in the computer storage medium, which is loaded and executed by a processor to implement the mobile robot control method according to any of claims 1-7.
CN202011529992.9A 2020-12-22 2020-12-22 Mobile robot control method, device, equipment and storage medium Pending CN114721364A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011529992.9A CN114721364A (en) 2020-12-22 2020-12-22 Mobile robot control method, device, equipment and storage medium
PCT/CN2021/082536 WO2022134336A1 (en) 2020-12-22 2021-03-24 Mobile robot control method, apparatus, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011529992.9A CN114721364A (en) 2020-12-22 2020-12-22 Mobile robot control method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114721364A true CN114721364A (en) 2022-07-08

Family

ID=82157282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011529992.9A Pending CN114721364A (en) 2020-12-22 2020-12-22 Mobile robot control method, device, equipment and storage medium

Country Status (2)

Country Link
CN (1) CN114721364A (en)
WO (1) WO2022134336A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115951672B (en) * 2022-12-15 2024-04-12 锐趣科技(北京)有限公司 Method for robot to pass through narrow channel

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101739996B1 (en) * 2010-11-03 2017-05-25 삼성전자주식회사 Moving robot and simultaneous localization and map-buliding method thereof
CN111486842B (en) * 2019-01-29 2022-04-15 深圳市优必选科技有限公司 Repositioning method and device and robot
CN112099488A (en) * 2020-08-14 2020-12-18 深圳拓邦股份有限公司 Narrow-passage passing method and device for mobile robot, mower and storage medium
CN112033410A (en) * 2020-09-03 2020-12-04 中南大学 Mobile robot environment map construction method, system and storage medium

Also Published As

Publication number Publication date
WO2022134336A1 (en) 2022-06-30

Similar Documents

Publication Publication Date Title
CN110316193B (en) Preview distance setting method, device, equipment and computer readable storage medium
CN112842149B (en) Control method of intelligent cleaning equipment and intelligent cleaning equipment
CN112171665A (en) Motion control method and device, terminal equipment and storage medium
CN114660994B (en) Numerical control machine tool machining process decision optimization method, system and related equipment
CN102186239A (en) Radio frequency (RF) fingerprint positing method, device and network equipment
US20230288937A1 (en) Method and apparatus for controlling self-moving device, and device
CN114721364A (en) Mobile robot control method, device, equipment and storage medium
CN113110471B (en) Equipment operation path planning method and device, computer equipment and storage medium
CN107272699A (en) Intelligent robot paths planning method and system
CN111198559A (en) Control method and system of walking robot
CN114296446A (en) Walking path planning method and system for self-moving equipment and storage medium
CN114617499B (en) Method, device and equipment for controlling charging of cleaning robot
CN112882459A (en) Cleaning path planning method, cleaning path planning device and cleaning robot
CN114303581A (en) Intelligent mower, walking path planning method and device and storage medium
CN116382306B (en) Track tracking control method, device, equipment and medium for full-coverage operation agricultural machinery
CN113172658A (en) Robot positioning method, device, equipment and medium
CN110795909B (en) Method, device, equipment and storage medium for constructing on-chip power switch chain
CN111103872A (en) Method and device for controlling robot to avoid charging device and computing equipment
CN115268968A (en) Internet of things control system and method based on cloud platform
CN110663345B (en) Mowing control method, system and device for mowing robot
CN114543802A (en) Search method and device for passable area, storage medium and electronic device
CN111714029A (en) Cleaning similar area judging method and device, electronic equipment and readable storage medium
CN114617477B (en) Cleaning control method and device for cleaning robot
CN112799388A (en) Working method of self-moving equipment and self-moving equipment
CN116752816A (en) Control method and storage medium of pool robot

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