Walking robot, method of controlling a walking robot, and walking robot system
By identifying feature points and boundary feature points of the operating area in the lawnmower robot, map information is generated. By using boundary lines for navigation under low-precision positioning, the problems of high cost and path integrity of high-precision positioning in lawnmower robots are solved, achieving efficient traversal and improved energy utilization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANGHAI SUNSEEKER ROBOTIC TECH CO LTD
- Filing Date
- 2020-01-09
- Publication Date
- 2026-05-29
AI Technical Summary
Existing lawn mowing robots are costly when using high-precision positioning, but struggle to ensure path integrity when using low-precision positioning, resulting in low energy efficiency and accelerated equipment depreciation.
By identifying the feature points of the operating area of the walking robot, map information is generated. The entire operating area is traversed using boundary feature points under low-precision positioning, and then the robot moves along the boundary line using electromagnetic signal sensing, thus forming an efficient traversal scheme.
It enables efficient traversal of the operation area under low-precision positioning, reduces costs and improves energy efficiency, and avoids repeated trimming and omissions.
Smart Images

Figure CN116619377B_ABST
Abstract
Description
[0001] This application is a divisional application of the invention patent application filed on January 9, 2020, with application number 202010020630.0 and entitled "Walking Robot, Method for Controlling Walking Robot and Walking Robot System". Technical Field
[0002] The present invention relates to a walking robot, and more specifically, to a walking robot capable of operating within a predetermined operating area, a method for controlling the walking robot, and a walking robot system including the walking robot. Background Technology
[0003] Currently, there are various types of walking robots on the market, such as robots for mowing lawns, robots for sweeping, and robots for mopping. Taking lawn mowing robots as an example, mainstream lawn mowing robots typically use a random path walking pattern to perform lawn mowing operations. This random path walking pattern can meet the needs of mowing regular lawns well; however, achieving a certain degree of traversal (e.g., at least 99% traversal) requires a long time. Furthermore, this mowing pattern results in a large number of areas being repeatedly mowed, leading to low energy efficiency and accelerated equipment depreciation.
[0004] To address the aforementioned problems, several walking robots that follow predetermined paths have been proposed in this field. For example, a high-precision positioning device (such as a GPS module) can be installed on a lawnmower robot. Through precise positioning, the lawnmower robot can walk along a predetermined path, such as a reciprocating or spiral route, achieving efficient traversal. However, this efficient traversal relies heavily on the high precision of the positioning device installed on the lawnmower robot, which significantly increases its cost. On the other hand, insufficient positioning accuracy makes it difficult to guarantee that the lawnmower robot will operate along the predetermined route, leading to omissions between adjacent paths. Summary of the Invention
[0005] To address at least one of the aforementioned problems, this invention proposes a scheme that facilitates the traversal of the entire operating area by determining the feature points of the operating area of the walking robot.
[0006] On the other hand, the present invention also proposes a scheme to achieve efficient traversal of the operating area even under low-precision positioning conditions.
[0007] According to some aspects of the present invention, a walking robot is provided. The walking robot includes: a main body; and a control mechanism configured to control the main body to perform the following operations: controlling a drive motor to cause the main body to walk along a boundary line of a predetermined operating area, and sampling the boundary line to obtain data of a set of all boundary sampling points on the boundary line; determining a threshold number or a range of threshold number for boundary feature points of the predetermined operating area based on the set of boundary sampling points obtained on the boundary line; comparing the number of boundary sampling points in the set of boundary sampling points with a curvature greater than the curvature threshold number with the threshold number or the range of threshold number; and selecting multiple boundary sampling points whose number satisfies the threshold number or the range of threshold number as boundary feature points to form map information of the predetermined operating area, the map information including a list of coordinates of the boundary feature points.
[0008] According to other aspects of the present invention, a walking robot system is provided. The walking robot system includes a walking robot as described above and a base station, the base station including a power supply module for supplying power to a boundary line connected thereto, so as to generate electromagnetic signals around the boundary line.
[0009] According to further aspects of the present invention, a method for controlling a walking robot is provided. The method includes: controlling the main body of the walking robot to walk along a boundary line of a predetermined operating area, and sampling the walking path to obtain data of a set of all boundary sampling points on the boundary line; determining a threshold number or a range of threshold number for boundary feature points in the predetermined operating area based on the set of boundary sampling points obtained on the boundary line; comparing the number of boundary sampling points in the set of boundary sampling points with a curvature greater than the curvature threshold number with the threshold number or the range of threshold number; and selecting multiple boundary sampling points whose number satisfies the threshold number or the range of threshold number as boundary feature points to form map information of the predetermined operating area, the map information including the coordinates of the multiple boundary feature points. Attached Figure Description
[0010] Figure 1 A schematic diagram of the appearance of the walking robot according to the present invention is shown;
[0011] Figure 2 A schematic diagram of the internal structure of the walking robot according to the present invention is shown;
[0012] Figure 3 A schematic diagram of the operating area of the walking robot according to the present invention is shown;
[0013] Figure 4 A flowchart illustrating the operation method of the walking robot in a working mode according to the present invention is shown;
[0014] Figure 5 A flowchart illustrating the operation method of the walking robot according to the present invention in another working mode is shown;
[0015] Figure 6 A schematic diagram showing the state of the walking robot according to the present invention when it reaches a boundary feature point;
[0016] Figure 7A and 7B This diagram illustrates the omissions generated by a walking robot equipped with a low-precision positioning device near boundary feature points.
[0017] Figure 8 A schematic diagram illustrates a method for a walking robot according to the present invention to process missed portions near boundary feature points;
[0018] Figure 9 A schematic diagram illustrates another method for a walking robot according to the present invention to process missed portions near boundary feature points; and
[0019] Figure 10 A schematic diagram of an irregular operating area according to the present invention is shown. Detailed Implementation
[0020] The embodiments of the present invention will be described in detail below with reference to the accompanying drawings to provide a clearer understanding of the purpose, features, and advantages of the present invention. It should be understood that the embodiments shown in the drawings are not intended to limit the scope of the present invention, but are merely illustrative of the essential spirit of the technical solution of the present invention.
[0021] In the following description, certain specific details are set forth for the purpose of illustrating various disclosed embodiments in order to provide a thorough understanding of the various disclosed embodiments. However, those skilled in the art will recognize that embodiments may be practiced without one or more of these specific details. In other instances, well-known apparatuses, structures, and techniques associated with this application may not have been shown or described in detail to avoid unnecessarily obscuring the description of the embodiments.
[0022] Unless the context requires otherwise, throughout the specification and claims, the word “comprising” and its variations, such as “including” and “having”, shall be understood to have an open, inclusive meaning, that is, to be interpreted as “including, but not limited to”.
[0023] Throughout this specification, references to "an embodiment" or "an embodiment" indicate that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Therefore, the appearance of "in an embodiment" or "an embodiment" in various places throughout the specification does not necessarily refer to the same embodiment. Furthermore, a particular feature, structure, or characteristic may be combined in any manner in one or more embodiments.
[0024] The singular forms “a” and “the” used in this specification and the appended claims include plural references unless otherwise expressly stated herein. It should be noted that the term “or” is generally used to mean “and / or” unless otherwise expressly stated herein.
[0025] In the following description, in order to clearly demonstrate the structure and working method of the present invention, a number of directional terms will be used. However, terms such as "front", "back", "left", "right", "outside", "inside", "outward", "inward", "up", and "down" should be understood as convenient terms and not as limiting terms.
[0026] Figure 1 A schematic diagram of the appearance of the walking robot 1 according to the present invention is shown. Figure 2 A schematic diagram of the internal structure of a walking robot 1 according to the present invention is shown. The walking robot 1 may resemble in appearance some walking robots in the prior art, such as those described in Chinese invention patent application publication number CN 109673241 A. Specifically, as... Figure 1 As shown, the walking robot 1 may include a main body 10 and a control mechanism 20. The control mechanism 20 may be located inside or outside the main body 10 and is used to control the walking path of the main body 10. The main body 10 also includes a walking mechanism 30. In some implementations, the walking mechanism 30 includes a pair of driving wheels 32 located at the rear of the main body 10 and one or more driven wheels (not shown in the figure) located at the front of the main body 10. In these implementations, the main body 10 also includes one or a pair of drive motors 12 (see...). Figure 2The walking mechanism 30 is used to drive the drive wheel 32 under the control of the control mechanism 20, thereby driving the main body 10 to move, such as driving the main body 10 forward, backward, and turning. The driven wheel can be set as a swivel wheel, which supports the main body 10 together with the drive wheel 32 and moves with the movement of the drive wheel 32. Those skilled in the art will understand that the arrangement of the walking mechanism 30 is not limited to that described herein and shown in the figures, but can have various different arrangements depending on the function and structure of the walking robot 1. For example, if the walking robot 1 is a circular sweeping robot or mopping robot, the drive wheel 32 of the walking mechanism 30 can be set at both ends of a diameter on the circular bottom surface, while the driven wheel can be set at one or both ends of another diameter perpendicular to the diameter where the drive wheel 32 is located, or the driven wheel may not be set.
[0027] Furthermore, the walking robot 1 may also include a working mechanism (not shown in the figure), which performs specific operational functions when the main body 10 moves within a specific operating area. For example, if the walking robot 1 is a lawnmower robot, the working mechanism may include a working drive motor and a working device, such as a cutting device, located below the main body 10 and driven by the working drive motor, for trimming the lawn along the walking path as the walking robot 1 moves. As another example, if the walking robot 1 is a sweeping robot, the working mechanism may include a working drive motor and a working device, such as one or more sweeping brushes and a suction port, located below the main body 10 and driven by the working drive motor.
[0028] In addition, the walking robot 1 may also include a power source (not shown in the figure). In some implementations, the power source includes a removable or non-removable lithium-ion battery pack or other rechargeable batteries. Alternatively, in some implementations, the power source may also include a power cord and an AC / DC converter for connection to an external AC power source.
[0029] The control mechanism 20 is configured to perform various functions, including: the control body 10 moves along the boundary line of a predetermined operating area and samples the boundary line to obtain a set of all boundary sampling points on the boundary line.
[0030] Figure 3 A schematic diagram of the operating area 4 of the walking robot 1 according to the present invention is shown. Figure 3 As shown, the operating area 4 is the work area where the walking robot 1 performs tasks such as mowing and sweeping. A boundary line 3 is pre-set around the operating area 4 to define the operating area 4. Figure 3 The operating area 4 is illustrated in a rectangular shape, but those skilled in the art will understand that the operating area 4 can also be any other possible shape.
[0031] Initially, the walking robot 1 can be located at any point on or within the closed loop formed by the boundary line 3. For simplicity, assume that the walking robot 1 is initially located at the base station 2 installed on the boundary line 3, such as... Figure 3 As shown in the diagram, base station 2 may include, for example, a power supply module for supplying power to the boundary line 3 connected thereto, thereby generating an electromagnetic signal around the boundary line 3. The walking robot 1 can continuously sense this electromagnetic signal while walking, in order to walk along the boundary line 3 in different operating modes or determine whether it is within the operating area 4 based on the polarity of the sensed electromagnetic signal. Here, the boundary line 3 may be, for example, a metal wire capable of receiving power and generating an electromagnetic signal; however, those skilled in the art will understand that the boundary line 3 may also be other forms of tangible or intangible boundaries.
[0032] In some implementations, base station 2 may also include a charging module that charges the walking robot 1 while it is stationed on it.
[0033] Figure 4 A flowchart illustrating an operation method 400 of the walking robot 1 according to the present invention in a working mode is shown. Specifically, Figure 4 A flowchart of a method 400 for a walking robot 1 to determine map information of its operating area 4 in its initial state is shown. The following is a combination of... Figures 1 to 4 Method 400 is described.
[0034] In method 400, in step 410, the control mechanism 20 first determines whether the walking robot 1 is in its initial position. For simplicity, it is assumed that the walking robot 1 is in its initial position when it is located at base station 2, such as... Figure 3 As shown in the diagram. For example, the control mechanism 20 can determine whether the walking robot 1 is located at the base station 2 by judging whether the walking robot 1 is connected to the base station 2 or whether the distance between the two is less than a very small value, thereby determining whether the walking robot 1 is in its initial position.
[0035] If the control mechanism 20 determines that the walking robot 1 is not in its initial position, method 400 proceeds to step 420, where the walking robot 1 is adjusted to its initial position. Here, the walking robot 1 can be adjusted to its initial position in various ways. For example, in some implementations, the walking robot 1 can sense electromagnetic signals around the boundary line 3, thereby capturing the boundary line 3 and returning to its initial position (e.g., at base station 2) along the boundary line 3. Alternatively, in some other implementations, the walking robot 1 can be manually placed at base station 2 by an operator. The present invention is not limited in this respect.
[0036] On the other hand, if the control mechanism 20 determines that the walking robot 1 is in the initial position, method 400 proceeds to step 430, where the control mechanism 20 establishes a coordinate system for subsequent boundary point sampling. For example, the control mechanism 20 can establish a Cartesian plane coordinate system XOY with the center of the walking robot 1 or the projection of the midpoint of the axle connecting a pair of drive wheels 32 onto the horizontal plane as the origin O, and the X-axis as the direction in which the walking robot 1 extends from the base station 2 to the boundary line 3 along a first direction (such as clockwise). Figure 3 As shown in the diagram. However, those skilled in the art will understand that the present invention is not limited to this, and various other coordinate systems can be established as needed, such as a planar polar coordinate system, etc., and the origin of the coordinates is not limited to the center of the walking robot 1, but can be any other reference point, such as the projection position of the geometric center of the walking robot 1 on the horizontal plane, or the projection position of the geometric center of the working mechanism on the horizontal plane, etc. Furthermore, the establishment of the planar coordinate system XOY is not limited to the above-described method, but can be... Figure 3 The directions of the X and Y axes shown can be interchanged, or the directions of the X and Y axes can be set arbitrarily. In embodiments where the walking robot 1 is equipped with a geomagnetic sensor, the X or Y axis can also be extended towards the geomagnetic north or south pole.
[0037] Next, in step 440, the control mechanism 20 controls the walking robot 1 to walk from the base station 2 along the boundary line 3 in a predetermined direction (such as clockwise) and samples the boundary line 3.
[0038] In some implementations, the control mechanism 20 may further include a main controller 22, an odometer acquisition module 24 and a heading acquisition module 26 connected to the main controller 22, and a memory 28, such as Figure 2 As shown in the diagram. The mileage acquisition module 24 can be used to acquire the walking mileage of the walking robot 1, and the direction acquisition module 26 can be used to acquire the heading angle of the walking robot 1. Specifically, a photoelectric encoder can be installed on the drive motor 12 to detect the arc traversed by the drive wheel 32 within a certain time. The mileage acquisition module 24 and the heading acquisition module 26 can calculate the walking mileage and heading angle of the walking robot 1 within a certain time based on the results detected by the photoelectric encoder and the radius of the drive wheel 32. In other embodiments, a gyroscope can be used instead of a photoelectric encoder. In other embodiments, a gyroscope and a photoelectric encoder can be used simultaneously for mutual correction. Furthermore, a geomagnetic sensor can be installed on the main body 10 to compensate for the cumulative error of the photoelectric encoder and / or gyroscope, thereby improving accuracy.
[0039] In step 440, the control mechanism 20 samples points on the boundary line 3 at predetermined time intervals or at predetermined distances; these points are called boundary sampling points. Further, the control mechanism 20 (such as the main controller 22) can calculate the coordinates of the boundary sampling points based on the travel distance and heading deflection angle, and store the coordinates of the boundary sampling points in the memory 28 in the form of a linked list.
[0040] The walking robot 1 can move from its initial position along the first direction, rotate 180° in place, and then walk along the boundary line 3. Alternatively, it can walk directly along the first direction in a backward manner. This depends on whether the walking robot 1 supports backward walking.
[0041] Next, in step 450, the control mechanism 20 determines whether data for the set of all boundary sampling points on boundary line 3 has been obtained. For example, the control mechanism 20 may determine whether its travel path forms a closed curve, or whether the walking robot 1 has returned to its initial position, such as being in contact with or very close to base station 2, to determine whether sampling of the entire boundary line 3 has been completed.
[0042] Specifically, after obtaining the coordinates of all boundary sampling points, the control mechanism 20 can, for example, store the coordinates of all boundary sampling points in the memory 28, as shown in Table 1.
[0043] Table 1 List of Boundary Sampling Points
[0044]
[0045]
[0046] Here, the complete set of boundary sampling points shown in Table 1 can be represented as B. n ={b1,b2,b3,…,b n-1 ,b n}, where the boundary sampling point b i The coordinates of (1≤i≤n) are (u i ,v i ), where n represents the number of boundary sampling points obtained on boundary line 3, and n is a positive integer.
[0047] If it is determined in step 450 that not all boundary sampling points have been acquired, then method 400 returns to step 440 to continue.
[0048] On the other hand, after sampling the entire boundary line 3 is completed, in step 460, the control mechanism 20 can select from the set B of boundary sampling points. n The boundary feature points are determined to form the map information for operation area 4. This map information includes at least a list of coordinates of the boundary feature points.
[0049] Based on the coordinate information of the boundary sampling points shown in Table 1, the control mechanism 20 can determine the general information of the operation area 4, such as its area and shape. Further, the control mechanism 20 can determine the required threshold conditions for the number of boundary feature points, such as a threshold number or a threshold range, based on the general information of the operation area 4, and then set the boundary sampling points B... n The number of boundary sampling points with curvature greater than the curvature threshold is compared with the number threshold or the number threshold range, and the boundary feature points whose number of boundary sampling points meets the number threshold or the number threshold range are selected.
[0050] In some implementations, curve fitting can be performed on the boundary sampling points, and points with larger curvature on the fitted curve can be selected as boundary feature points. For example, curvature methods, circumcircle methods, or vector methods can be used to fit the set of boundary sampling points to determine the curvature of each boundary sampling point, thereby selecting the corresponding boundary feature points.
[0051] The following describes in detail how the control mechanism 20 selects boundary feature points from the boundary sampling points, using the curvature method as an example. As mentioned above, the control mechanism 20 can determine the shape and area of the operation region 4 based on the coordinates of the boundary sampling points as shown in Table 1, thereby automatically generating a feature point quantity threshold m0 or a quantity threshold range [m]. min ,m max Generally, for a specific operating region, the larger its area and the more complex its shape, the more boundary feature points are required. For example, if the operating region is too small or its shape is too simple, such as a convex polygon, the threshold for the number of boundary feature points can be set to a small value, such as 3. The threshold for the number of boundary feature points m0 or the range of the threshold [m]... min ,m max The threshold can be selected from a list of alternative thresholds or threshold ranges stored in memory 28.
[0052] When the number of boundary feature points within the operation region 4, calculated using a certain curvature threshold, equals the quantity threshold m0 or falls within the quantity threshold range [m], min ,m max When [the condition is met], it is possible to determine the existence of boundary feature points within the operation area 4 that meet the conditions and to determine the corresponding boundary feature points.
[0053] In one implementation, control mechanism 20 sets a curvature threshold k0 for the operating region 4. Control mechanism 20 can apply this to the set B of boundary sampling points shown in Table 1. n Perform curve fitting to calculate the curvature k at each boundary sampling point. i (1≤i≤n), and set the curvature k of each boundary sampling point. iEach sample point is compared with the curvature threshold k0 to determine the boundary sampling points that are greater than the curvature threshold k0. Let the number of these sampling points be m1.
[0054] Control mechanism 20 determines whether the number m1 of boundary sampling points greater than the curvature threshold k0 is equal to the quantity threshold m0 or falls within the quantity threshold range [m min ,m max If m1 equals the quantity threshold m0 or falls within the quantity threshold range [m] min ,m max If m1 boundary sampling points are selected, then these m1 boundary sampling points are determined as boundary feature points.
[0055] On the other hand, in some implementations, if m1 is not equal to the quantity threshold m0 or does not fall within the quantity threshold range [m min ,m max Then, the control mechanism 20 can further determine at least two distinct proper subsets of the set of boundary sampling points, where each proper subset has the same number of elements, n-(k-1), where n is the set of boundary sampling points B. n The set B contains the number of elements, where k is the number of proper subsets. Preferably, the spacing between adjacent elements in each proper subset is equal. The control mechanism 20 can compare the curvature of the boundary sampling points in each of the k proper subsets with a curvature threshold to determine the number of boundary sampling points in each proper subset whose curvature is greater than the curvature threshold. If only one proper subset in the k proper subsets satisfies the threshold condition, the boundary sampling points in that proper subset are selected as boundary feature points; if more than one proper subset in the k proper subsets satisfies the threshold condition, the boundary sampling points of any one of the more than one proper subsets are selected as boundary feature points; and if none of the k proper subsets satisfy the threshold condition, then set B can be further... n Divide into more proper subsets (e.g., l, l>k) and repeat the above operation.
[0056] For example, assuming k = 2, control mechanism 20 can determine set B. n Two proper subsets and Next, the control mechanism 20 performs curve fitting on the two proper subsets respectively, and then calculates the curvature at each boundary sampling point in each proper subset. The obtained curvature is compared with the curvature threshold k0 to determine the number of boundary sampling points in the two proper subsets whose curvature is greater than the curvature threshold k0. Let them be respectively and Next, control mechanism 20 determines the quantity m. 21 and m 22 Is it equal to the quantity threshold m0 or falls within the quantity threshold range [m]? min ,mmax If the quantity m 21 or m 22 Equal to the quantity threshold m0 or falling within the quantity threshold range [m min ,m max ], then the corresponding m 21 or m 22 Each boundary sampling point is selected as a boundary feature point. If the number is m 21 and m 22 All are equal to the quantity threshold m0 or fall within the quantity threshold range [m min ,m max ], then arbitrarily choose this m 21 or m 22 Each boundary sampling point is used as a boundary feature point.
[0057] Conversely, if the quantity m 21 and m 22 None of them are equal to the quantity threshold m0 or none of them fall within the quantity threshold range [m min ,m max Then, the control mechanism 20 can further determine the set B of boundary sampling points. n There are at least three distinct proper subsets of B, where each proper subset has the same number of elements, n-(l-1), where n is a subset of B. n The number of boundary sampling points in the subset, l is the number of proper subsets, and l>k. Preferably, the spacing between adjacent elements in each proper subset is equal. For example, assuming l=3, the control mechanism 20 can determine set B. n The three proper subsets and Next, the control mechanism 20 performs curve fitting on each of the three proper subsets, and then calculates the curvature at each boundary sampling point in each proper subset. The obtained curvature is compared with the curvature threshold k0 to determine the number of boundary sampling points in each of the three proper subsets whose curvature is greater than the curvature threshold k0, assuming they are m respectively. 31 m 32 and m 33 Next, control mechanism 20 determines the quantity m. 31 m 32 and m 33 Is it equal to the quantity threshold m0 or falls within the quantity threshold range [m]? min ,m max If the quantity m 31 m 32 and m 33 One of them is equal to the quantity threshold m0 or falls within the quantity threshold range [m min ,m max ], then the corresponding m 31 m32 or m 33 Each boundary sampling point is selected as a boundary feature point. If the number is m 31 m 32 and m 33 At least two of them are equal to the quantity threshold m0 or fall within the quantity threshold range [m min ,m max If ], then any one of the boundary sampling points in any of the at least two satisfied proper subsets can be selected as boundary feature points.
[0058] If none of these three proper subsets still satisfy the threshold condition, the algorithm can continue until a subset that satisfies the threshold condition for the number of boundary feature points is found.
[0059] The implementation methods for determining boundary feature points are not limited to those described above. In other implementations, the partitioning of proper subsets can take different forms. Specifically, if m1 is not equal to the quantity threshold m0 or does not fall within the quantity threshold range [m min ,m max Then, control mechanism 20 can further determine at least two proper subsets of the set of boundary sampling points, wherein the elements of each proper subset are distinct, and the number of elements in each proper subset is substantially equal to that of set B. n The number of elements in set B is 1 / k, where k is the number of proper subsets, meaning that set B is essentially partitioned evenly. n The control mechanism 20 can compare the curvature of the boundary sampling points in each of the k proper subsets with a curvature threshold to determine the number of boundary sampling points in each proper subset whose curvature is greater than the curvature threshold. If only one proper subset in the k proper subsets satisfies the threshold condition, the boundary sampling points in that proper subset are selected as boundary feature points; if more than one proper subset in the k proper subsets satisfies the threshold condition, the boundary sampling points of any one of those more than one proper subset are selected as boundary feature points; and if none of the k proper subsets satisfy the threshold condition, then set B can be further... n Divide into more proper subsets (e.g., l, l>k) and repeat the above operation.
[0060] For example, assuming k = 2, control mechanism 20 can determine set B. n Two proper subsets and
[0061] If the quantity m obtained from these two proper subsets 21 and m 22 If none of the quantity threshold conditions are met, then control mechanism 20 can further determine the set B of boundary sampling points. nA set has at least three proper subsets, where each proper subset contains distinct elements, and the number of elements in each proper subset is approximately equal to that in set B. n The number of elements in set B is 1 / l, where l is the number of proper subsets, and l>k, meaning that set B is partitioned approximately evenly. n Preferably, the spacing between adjacent elements in each proper subset is substantially equal. For example, assuming l = 3, the control mechanism 20 can determine set B. n The three proper subsets and Next, the control mechanism 20 performs curve fitting on each of the three proper subsets to determine whether the quantity threshold condition is met. Similar to the above implementation, the algorithm can continue until a subset that meets the quantity threshold condition of the boundary feature points is found.
[0062] In the above method, if a subset satisfying the threshold condition for the number of boundary feature points cannot be found, the control mechanism 20 can adjust the curvature threshold k0 and repeat the above calculation. For example, if the number of sampling points satisfying the curvature threshold k0 in each subset calculated above is less than the threshold condition for the number of feature points, the curvature threshold k0 can be decreased and the above calculation repeated; if the number of sampling points satisfying the curvature threshold k0 in each subset is greater than the threshold condition for the number of feature points, the curvature threshold k0 can be increased and the above calculation repeated.
[0063] Using the method described above, the control mechanism 20 can obtain the coordinates of all boundary feature points, and these coordinates can be stored in the memory 28, as shown in Table 2.
[0064] Table 2 List of boundary feature points
[0065]
[0066]
[0067] Where m represents the number of boundary feature points in the entire operation region 4, and m is a positive integer.
[0068] Specifically, Figure 4 The figure shows four boundary feature points (x1, y1), (x2, y2), (x3, y3) and (x4, y4) within the operation area 4.
[0069] Optionally, method 400 may further include: the control mechanism 20 dividing the operation area 4 into at least two sub-regions based on the map information of the operation area 4 obtained in step 460, and recording information for each sub-region. The information for each sub-region includes at least the coordinates of the boundary feature points within that sub-region. Furthermore, the information for each sub-region may also include its shape, area, and / or the coordinates of the boundary sampling points within that sub-region.
[0070] Specifically, the control mechanism 20 can use each boundary sampling point of the operation area 4 as a vertex of the unweighted undirected graph, and determine the set B of the vertex and the boundary sampling points. n Whether the other boundary sampling point is connected. Here, connection between two points means that the line connecting the two points falls within a closed boundary region or on the boundary. If the vertex is connected to the other boundary sampling point, a boundary line (which can be logical rather than physical) can be added between the vertex and the other boundary sampling point. Control mechanism 20 traverses the set B of boundary sampling points. n To generate a set of all edges, the set of all edges and all boundary sampling points constitute at least one complete graph. The control mechanism 20 divides the boundary sampling points located in the same complete graph into a sub-region.
[0071] However, in many practical situations, boundary line 3 cannot be arranged as a standard straight line, but will inevitably be winding. This invention provides a redundancy mechanism for sub-region division in such cases. For example, if two sampling points are located within a straight line segment on boundary line 3, theoretically the line connecting these two sampling points coincides with the fitted boundary line, meaning that every sampling point between these two sampling points lies on this line. In this case, the line connecting these two sampling points can be ignored when dividing sub-regions. On the other hand, if boundary line 3 is not a straight line, the line connecting it may have multiple intersection points with boundary line 3. In this case, a distance threshold l0 can be preset, the distance between two adjacent intersection points can be calculated, and it can be determined whether the distance is less than the distance threshold l0. If the distance is less than the distance threshold l0, the intersection point is considered invalid, that is, the line connecting it should not be considered when dividing sub-regions. Specifically, assume that the intersection points of the line connecting sampling point A and sampling point B with boundary line 3 are {x1, x2, x3, ..., x...} n (From A to B), then x i Based on the benchmark, judge The relationship between l0 and l0. If If it is greater than or equal to l0, then continue with x. i+1 Based on the benchmark, judge The relationship between the distance and l0. If the distance between any two adjacent nodes is less than the distance threshold l0, the line connecting A and B is removed from the set of edges mentioned above (or is not considered when generating the set of edges mentioned above).
[0072] In actual work scenarios, the operation area 4 is often irregular. For example, the entire operation area 4 is an irregular shape composed of rectangles, circles, or sectors. Figure 10 A schematic diagram of the irregular operating area 4 according to the present invention is shown.
[0073] exist Figure 10 In the case of the irregular operating region 4 shown, for example, the boundary feature points of the entire operating region 4 are determined to be 101 to 106 according to the method of steps 410 to 460. This number may meet the number threshold condition. However, in some special parts of the operating region 4, such as circular or fan-shaped parts 110, since the boundary lines of these parts are relatively smooth (i.e., the curvature of each point on the boundary line is basically the same), these points either all meet the curvature threshold or none of them meet the curvature threshold. Therefore, feature points that meet the above-mentioned number threshold condition cannot usually be obtained according to the curvature method described above.
[0074] In this case, the entire operating area 4 can be divided into multiple sub-regions 110, 120, and 130 as described above, and steps 410 to 460 described above can be performed for each sub-region. That is, each sub-region is treated as an independent closed shape to determine the boundary feature points.
[0075] In another embodiment, after obtaining all boundary sampling points on boundary line 3 (step 440), the operation region 4 can be divided into multiple sub-regions based on at least three of these boundary sampling points. For each sub-region, information about the sub-region is determined, including at least the coordinates of the boundary sampling points within that sub-region. For example, a method similar to that used for boundary feature points can be employed to divide the operation region 4 based on boundary sampling points. Specifically, each of the at least three boundary sampling points is used as a vertex in an unweighted undirected graph. It is determined whether the vertex is connected to another boundary sampling point among the at least three boundary sampling points. If the vertex is connected to the other boundary sampling point, an edge (which can be logical rather than physical) is added between the vertex and the other boundary sampling point. These at least three boundary sampling points are traversed to generate a set of all edges. The resulting set of all edges and the at least three boundary sampling points constitute at least two complete graphs, and the boundary sampling points located in one of the complete graphs are divided into a sub-region. Next, the boundary feature points within each sub-region can be determined using a method similar to that described in step 460 to form the information of that sub-region, which will not be elaborated further here.
[0076] The methods for sub-region division based on boundary feature points and boundary sampling points have been described above. However, in either case, for a sub-region with a substantially smooth boundary line, the above methods may still not be able to obtain enough boundary feature points in that sub-region because the curvature of each point on the boundary line is substantially the same. In this case, it can be determined whether the sub-region has a substantially smooth boundary line based on the coordinates of the boundary sampling points within the sub-region. Alternatively, if feature points satisfying the quantity threshold condition cannot be found within the sub-region in the manner described in step 460 above, it is determined that the sub-region has a substantially smooth boundary line. For sub-regions with smooth boundary lines (such as...) Figure 10 For the sub-region 110 shown, feature points that meet the threshold quantity condition can be randomly selected on the boundary line of the sub-region, such as... Figure 10 Feature points 107, 108, and 109 are shown. For example, the selected feature points can be evenly distributed along the boundary of the sub-region.
[0077] Similarly, for some specially shaped operating regions 4, such as smooth circular regions, since the curvature of each point on its boundary line 3 is substantially the same, the above method may still not be able to obtain enough boundary feature points throughout the entire operating region 4. In this case, it can be determined whether the operating region 4 has a substantially smooth boundary line 3 based on the coordinates of the boundary sampling points throughout the entire operating region. Alternatively, if feature points satisfying the quantity threshold condition cannot be found within the operating region 4 in the manner described in step 460 above, it can be determined that the operating region 4 has a substantially smooth boundary line. For such operating regions with smooth boundary lines, feature points satisfying the quantity threshold condition can also be randomly generated on the boundary line of the operating region, for example, these feature points can be evenly distributed on the boundary line of the operating region.
[0078] The above combination Figures 1 to 4 A walking robot 1 according to some aspects of the present invention has been described. More specifically, the process by which the walking robot 1 surveys the operating area 4 to form map information that facilitates subsequent operations is described before it begins to perform a work task within that specific operating area 4. Furthermore, the walking robot 1 may divide the operating area 4 into multiple sub-areas so that it can better traverse the entire operating area 4 without missing any parts during operations.
[0079] In other aspects of the invention, the walking robot 1 is also able to efficiently traverse the operating area 4 even with low-precision positioning. Figure 5 A flowchart of an operation method 500 for a walking robot 1 in another working mode according to the present invention is shown. Hereinafter, in conjunction with... Figure 3 and Figure 5 Method 500 is described.
[0080] Walking robot 1 can be, for example, a combination of the above. Figure 1 and Figure 2 The described walking robot 1. Furthermore, the memory 28 of the control mechanism 20 stores map information of the operating area 4, which includes the coordinates of multiple boundary feature points within the operating area 4, as shown in Table 2. Additionally or optionally, the memory 28 may also store information about multiple sub-regions of the operating area 4, which at least includes the coordinates of the boundary feature points within the corresponding sub-region.
[0081] In one implementation, the aforementioned map information and / or sub-region information is obtained by the control mechanism 20 in advance controlling the walking robot 1 to traverse the entire operating area 4, as shown above. Figure 4 The method described in 400. However, the present invention is not limited thereto, and the above-mentioned map information and / or sub-region information can also be pre-set in the memory 28 in other ways. For example, for some walking robots 1 equipped with mobile phone or computer desktop applications, the graphics of the operation area 4 can be drawn on the mobile phone or computer desktop application and the boundary feature points can be manually specified.
[0082] In method 500, in step 510, the control mechanism 20 first determines whether the walking robot 1 is in its initial position. Figure 4 The method is similar to 400. Assuming that the walking robot 1 is in its initial position when it is located at base station 2, such as Figure 3 As shown in the diagram. For example, the control mechanism 20 can determine whether the walking robot 1 is located at the base station 2 by judging whether the walking robot 1 is connected to the base station 2 or whether the distance between the two is less than a very small value, thereby determining whether the walking robot is in its initial position.
[0083] If the control mechanism 20 determines that the walking robot 1 is not in its initial position, method 500 proceeds to step 520, where the walking robot 1 is adjusted to its initial position. Here, the walking robot 1 can be adjusted to its initial position in various ways. For example, in some implementations, the walking robot 1 can sense electromagnetic signals around the boundary line 3, thereby capturing the boundary line 3 and returning to its initial position (e.g., at base station 2) along the boundary line 3. Alternatively, in some other implementations, the walking robot 1 can be manually placed at base station 2 by an operator. The present invention is not limited in this respect.
[0084] On the other hand, if the control mechanism 20 determines that the walking robot 1 is in the initial position, method 500 proceeds to step 530, where the control mechanism 20 controls the main body 10 to walk from the initial position along the boundary line 3 in a predetermined first direction (e.g., clockwise). In step 540, when the main body 10 reaches the vicinity of one of the boundary feature points, the control mechanism 20 controls the main body 10 to adjust the main body 10 so that the main body 10 enters the operating area 4 along the normal direction of the boundary line 3 at that boundary feature point. Here, on the one hand, for the operational purpose of the walking robot 1, the walking robot 1 needs to start entering the operating area 4 to perform operations upon reaching the boundary feature point. On the other hand, due to the positioning error and accumulated error of the walking robot 1 itself, it is difficult for the walking robot 1 to start entering the operating area 4 at the exact boundary feature point, but it is usually considered to have reached the boundary feature point when it is near the boundary feature point. This is determined by the working principle of the walking robot 1, which retrieves the coordinates of the planned boundary feature point from its memory and calculates its own real-time position coordinates from the initial position (e.g., at base station 2), for example, using the mileage acquisition module and the direction acquisition module. When the calculated real-time position coordinates fall within a specific region (such as a circular or other shaped region) centered on the planned boundary feature point coordinates, it is determined that it has reached the planned boundary feature point. In this case, a positioning error arises between the actual position and the planned boundary feature point. Furthermore, due to the accumulation of positioning errors, a cumulative error occurs, and the positional deviation between the actual position of the walking robot 1 and the boundary feature point when it enters the operating area 4 will become increasingly larger.
[0085] Figure 6 A schematic diagram of the state of the walking robot 1 according to the present invention when it reaches a boundary feature point is shown. For example, suppose the walking robot 1 reaches the boundary feature point (x1, y1), where the normal direction of the boundary line 3 at the boundary feature point (x1, y1) is tt and the tangent direction is nn. In this case, the walking robot 1 stops walking along the boundary line 3 and can rotate the main body 10 so that it enters the operating area 4 along the normal direction tt.
[0086] Hereinafter, the path along the tangent direction nn can also be called the lateral path, while the path along the normal direction tt can be called the longitudinal path. The lateral path is controlled to be as straight as possible, while the longitudinal path can be a straight line or an arc.
[0087] Furthermore, in some implementations, when the main body 10 reaches the boundary feature point (x1, y1), the control mechanism 20 activates the working mechanism of the walking robot 1, causing it to begin working within the operating area 4. For example, if the walking robot 1 is a lawnmower robot, the control mechanism 20 activates its working mechanism so that its working device (lawnmower device) trims the grass on the walking path as the walking robot 1 walks.
[0088] Next, in step 550, when the control mechanism 20 determines that the main body 10 enters the operating area 4 along the normal direction tt of the boundary line 3 at the boundary feature point (x1, y1) and reaches a predetermined distance W... l At that time, the main body 10 is adjusted so that it travels along the tangent direction nn of the boundary line 3 at the boundary feature point (x1, y1). Here, the predetermined distance W l It is usually set to be equal to or less than the width of the main body 10, or to be equal to or less than the effective working width of the working device of the walking robot 1 (such as the mowing device, sweeping brush or vacuum port mentioned above).
[0089] Next, in step 560, when the main body 10 travels along the tangent direction nn at the boundary feature point (x1, y1) of the boundary line 3 to reach the boundary line 3, the control mechanism 20 determines whether the travel of the main body 10 along the tangent direction nn has reached the predetermined stopping condition.
[0090] If, in step 560, it is determined that the movement of the main body 10 along the tangent direction nn has not met the predetermined stopping condition, the operation returns to step 540, and the control mechanism 20 adjusts the main body 10 so that the main body 10 again moves a predetermined distance W along the normal direction tt of the boundary line 3 at the boundary feature point toward the operating area 4. l .
[0091] In other words, such as Figure 6 As shown, the walking robot 1 moves back and forth along the longitudinal and lateral paths within the operating area 4, traveling in a bow-shaped route.
[0092] On the other hand, if step 560 determines that the movement of the body 10 along the tangential direction nn has reached a predetermined stopping condition, then method 500 proceeds to step 570, where the control mechanism 20 adjusts the body 10 to return it to its initial position, for example, by returning it to the initial position along the boundary line 3 or in other ways. Here, the initial position could be, for example, as shown in the figure below. Figure 3 The location of base station 2 is shown in the figure.
[0093] In one embodiment, the predetermined stop time includes a predetermined duration. In this case, the timing is taken as the starting point when the main body 10 first enters the operation area 4 along the normal direction in step 540. When the walking time of the main body 10 in the operation area 4 reaches or exceeds the predetermined duration, it is determined in step 560 that the predetermined stop condition has been met.
[0094] In another embodiment, the predetermined stopping condition includes the length of the lateral path and its variation. For example, considering that in many cases the length of the lateral path typically undergoes a change from small to large and then from large to small, such as... Figure 6 As shown in the diagram. In this case, in step 560, it can be determined whether the distance traveled by the body 10 along the tangential direction is less than or equal to a predetermined value W. h Furthermore, it is determined whether the distance traveled by the main body 10 along the tangential direction (lateral path length) is less than or equal to the distance traveled along the tangential direction previously (previous lateral path length). The determination is based on whether the lateral path length of the main body 10 is less than or equal to a predetermined value W. h Furthermore, when the lateral path length of the main body 10 is less than or equal to the length of the previous lateral path, step 560 determines that the predetermined stopping condition is met, and method 500 proceeds to step 570. In this way, compared with judging solely by the lateral path length itself, the error of judging the stopping condition as soon as the main body 10 enters the operation area 4 is avoided.
[0095] Here, the predetermined value W h It can be a value comparable to the length of the main body 10, such as 0.3 to 0.5 times the length.
[0096] This completes one operation on operating area 4. The area where the walking robot 1 actually works in this operation can also be called a working block.
[0097] After returning to the initial position, the control mechanism 20 can reset the travel distance acquired by its mileage acquisition module and the heading deflection angle acquired by its direction acquisition module to eliminate the accumulated errors from the previous operation and avoid affecting the next operation.
[0098] Next, the control mechanism 20 controls the main body 10 to move from the initial position to the next boundary feature point (x2, y2) and repeats the operation of the above method 500 until all boundary feature points are traversed.
[0099] In operating area 4, there is a regular shape, such as... Figure 3 In the case of a regular rectangle as shown, the working block starting at each boundary feature point can essentially cover the entire operation region 4, thus the above method can traverse the entire operation region 4 well. However, in the case of an irregular shape, such as... Figure 10In the case of the irregular shape shown, the entire operation area 4 can be traversed better by dividing it into sub-regions.
[0100] Specifically, in this case, memory 28 also stores information about multiple sub-regions of operation region 4. Here, the method for dividing operation region 4 into multiple sub-regions can be as described above... Figure 4 The method described herein. However, the present invention is not limited thereto; the division of multiple sub-regions can also be achieved through other methods, such as geometric segmentation or manual pre-specification.
[0101] When the operating area 4 is divided into multiple sub-areas, the control mechanism 20 can control the walking robot 1 to perform the operations described in method 500 in each sub-area. In this case, the working block starting at each boundary feature point cannot cover the entire operating area 4, but can only cover one sub-area and a portion of the adjacent sub-area. However, the working block starting at all boundary feature points 101 to 109 can cover the entire operating area 4 well.
[0102] In particular, if the walking robot 1 is equipped with a low-precision positioning device such as an optical encoder, gyroscope, and / or geomagnetic sensor instead of a high-precision positioning device like GPS, the walking robot 1 may not be able to accurately locate each boundary feature point, resulting in it entering the operating area 4 earlier or later than the boundary feature point. In this case, according to the above... Figure 5 Method 500 may result in omissions within operation area 4. Figure 7A and 7B A schematic diagram shows the missing portion A1 generated near the boundary feature point by the walking robot 1 equipped with a low-precision positioning device. (See diagram for example.) Figure 7A and 7B As shown, the walking robot 1 determines that it has reached the boundary feature point (x1, y1) before actually reaching it, and begins the operation of method 500 described above, resulting in the region A1 near the boundary feature point (x1, y1) not being processed. Similarly, if the walking robot 1 determines that it has reached the boundary feature point (x1, y1) only after actually reaching it, a similar omission will occur near the boundary feature point (x1, y1).
[0103] In this situation, it is possible to process the missing part A1 by performing the work separately in multiple overlapping work blocks as described above. For example, in... Figure 3In the case of the rectangular operation area 4 shown, the omission A1 that may occur in the operation of the first working block starting from the boundary feature point (x1,y1) will be processed in the operations of the second and fourth working blocks starting from the boundary feature points (x2,y2) and (x4,y4).
[0104] However, for some more complex operating areas, the above method may still be insufficient to cover all missed portions near the boundary feature points. To address this, the present invention further improves the method 500 by performing radial operations on the area near the boundary feature points to eliminate missed portions. Figure 8 A schematic diagram illustrates a method by which a walking robot 1 according to the present invention processes a missed portion A1 near a boundary feature point. Figure 8 In the method shown, the walking robot 1 can perform operations in the operating area 4 along the path p0→p1→p2→p3→p4→p5→p6→p7→p8→p9→p10→p11→p12→p13. Similarly, the walking path along the tangent direction nn is called the lateral path or standard lateral path, while the walking path along the normal direction tt is called the longitudinal path or standard longitudinal path. Paths p0→p1, p2→p3, p4→p5, p6→p7, p8→p9, p10→p11 have a significant angle with boundary line 3 and can be called temporary lateral paths. Paths p1→p2, p3→p4, p5→p6, p7→p8, p9→p10, p11→p12 basically coincide with boundary line 3 and can be called temporary longitudinal paths. Among them, the operation of the walking robot 1 on the temporary lateral paths p0→p1, p2→p3, p4→p5, p6→p7, p8→p9, p10→p11 can be regarded as radial operation in the omitted part A1. It can be seen that in Figure 8 In the path shown, the temporary longitudinal paths p1→p2, p3→p4, p5→p6, p7→p8, p9→p10, and p11→p12 are all very short. This is mainly due to the width of the walking robot 1 itself, which necessitates executing the temporary longitudinal paths shown in the figure. In fact, under ideal operating conditions, the length of the temporary longitudinal paths is 0, meaning p1 / p2 coincides, p5 / p6 coincides, p9 / p10 coincides, and p0 / p3 / p4 / p7 / p8 / p11 / p12 coincide. This ensures that the walking robot 1 always starts from p0 when changing angles, guaranteeing the accuracy of angle control. The following description uses this ideal situation as an example, and refers to p0 / p3 / p4 / p7 / p8 / p11 / p12 collectively as the first position p0, p1 / p2 collectively as the second position p1, p5 / p6 collectively as the third position p5, and p9 / p10 collectively as the fourth position p9.
[0105] Specifically, in Figure 8 In the method shown, it is assumed that when the main body 10 walks along the boundary line 3, it stops moving forward because the first position p0 before the boundary feature point (x1,y1) is mistakenly identified as the boundary feature point (x1,y1) due to reasons such as positioning accuracy. It is also assumed that the angle between the direction in which the walking robot 1 walks along the boundary line 3 (i.e. the tangent direction of the boundary line 3 at the first position) and the tangent direction nn at the boundary feature point (i.e. the standard lateral path direction) is the first angle α0.
[0106] In some embodiments, when the main body 10 stops at the first position p0, the control mechanism 20 controls the main body 10 to enter the operating area 4 from the first position p0 and walk along the second angle α1 until it reaches the boundary line 3, for example, to the second position p1 on the boundary line 3. Here, the second angle α1 is smaller than the first angle α0. For example, the control mechanism 20 can control the main body 10 to turn towards the operating area 4 at the second angle α1 and walk in a straight line in the operating area 4 at the first position p0. When it reaches the second position p1, the walking robot 1 has completed the first radial operation p0→p1 in the missed part A1.
[0107] In some implementations, the control mechanism 20 can determine the number of reciprocating strokes for radial operations on the region A1 near the boundary feature point (x1, y1) based on the magnitude of the first angle α0 (and possibly other factors such as the width of the main body 10 or the working width and / or the size of the operating area 4 or the corresponding operating block, etc.), and accordingly determine the second angle α1. For example, as Figure 8 As shown, assume that the control mechanism 20 determines q times to perform the operation in region A1 based on the first angle α0. Figure 8 Assuming a radial operation of 4 times (representing reciprocation as 1 time), the control mechanism 20 can determine as follows: Figure 8 The angles α1, α2, α3, and α4 are shown. Where α4 = α0. Angles α1, α2, α3, and α4 can be an arithmetic sequence, meaning that each radial operation represents a rightward shift relative to the previous one by an angle. And the angle of the first radial operation However, the present invention is not limited to this; angles α1, α2, α3, and α4 may not be an arithmetic sequence. Alternatively, the angles α1, α2, α3, and α4 can be determined in other ways. For example, a small angle Δ can be preset as the angle difference for each adjustment. In fact, as long as the adjustment is performed at least once within the omitted portion A1 with a second angle α1 less than the first angle α0, the adjustment can be completed. Figure 8 The radial operations shown will effectively improve the handling of the missing part A1.
[0108] When the main body 10 reaches the second position p1 on the boundary line 3 along the second angle α1, the control mechanism 20 controls the main body 10 to return from the second position p1 to the first position p0. At this time, the control mechanism 20 can determine a third angle α2 greater than the second angle α1, for example, α2 = α1 + Δ as described above, and determine whether the third angle α2 is greater than or equal to the first angle α0. If it is determined that the third angle α2 is less than the first angle α0, the control mechanism 20 controls the main body 10 to cross the operation area 4 from the first position p0 at the third angle α2 to the boundary line 3, for example, to the third position p5 on the boundary line. In this way, the walking robot 1 completes the second radial operation p0→p5 in the missed part A1. On the other hand, if the third angle α2 is greater than or equal to the first angle α0, the control mechanism 20 controls the walking robot 1 to enter the operation area 4 in the lateral path direction (nn). That is, if the third angle α2 is greater than or equal to the first angle α0, the operation changes to the combination of the above. Figure 5 The aforementioned standard operating procedure.
[0109] Similarly, the above process can be repeated until the deflection angle from the first position p0 is greater than or equal to the first angle α0. For example, after the control mechanism 20 controls the main body 10 to move from the first position p0 through the operating area 4 at a third angle α2 to the third position p5 on the boundary line 3, as described above, the control mechanism 20 can also control the main body 10 to return from the third position p5 on the boundary line 3 to the first position p0. At this time, the control mechanism 20 can determine a fourth angle α3 greater than the third angle α2, for example, α3 = α2 + Δ, and determine whether the fourth angle α3 is greater than or equal to the first angle α0. If it is determined that the fourth angle α3 is less than the first angle α0, then the control mechanism 20 controls the main body 10 to move from the first position p0 through the operating area 4 at a fourth angle α3 to the boundary line 3, for example, to the fourth position p9 on the boundary line 3. In this way, the walking robot 1 completes the third radial operation p0→p9 in the missed part A1. By analogy, the walking robot 1 can perform multiple radial movements in the missed part A1 until the next deflection angle is greater than or equal to the first angle α0. At this point, the walking robot 1 can be readjusted to walk in the standard lateral path direction (i.e., the tangent direction nn of the boundary feature point (x1, y1)).
[0110] When the walking robot 1 needs to perform a specific task (such as mowing or sweeping), the control mechanism 20 can activate the working mechanism each time the walking robot 1 enters the operating area 4, for example, performing the task on the operating area 4 during round trips from p0 to p1 and from p1 to p0, from p0 to p5 and from p5 to p0, and from p0 to p9 and from p9 to p0. Alternatively, the control mechanism 20 can also control the walking robot 1 to perform the task on the operating area 4 only during each journey from the first position p0, and not during the return journey. This saves energy consumption for the walking robot 1 and avoids repetitive work on certain parts of the operating area 4, thus preventing wear and tear on the walking robot 1.
[0111] Furthermore, the walking path of the robot 1 within the omitted portion A1 is not limited to the one described above, but can include other methods. For example, after the robot 1 moves from the first position p0 to the second position p1, it can travel a specific distance along the boundary line 3 in a first direction (such as clockwise) to the third position p2 instead of returning to the first position p0, and then return to the first position p0 from the third position p2. This specific distance can be calculated based on the angle Δ (in the case where angles α1, α2, α3, and α4 are an arithmetic sequence), or it can be determined based on other factors, such as the width of the main body 10 or the working width. In this way, the number of times the robot 1 moves within the operating area 4 can be reduced, allowing each move to be an effective operation. However, this method increases the computational load on the control mechanism 20 to calculate the walking path of the robot 1.
[0112] Figure 9 A schematic diagram of another method for processing the missing parts near the boundary feature points of the walking robot 1 according to the present invention is shown. Figure 9 It can be regarded as Figure 8 This is a simplified implementation of the method described in [the document].
[0113] like Figure 9 As shown, with Figure 8 Similarly, assuming the main body 10 stops moving forward at the first position p0 on the boundary line 3 and reaches the second position p1 on the boundary line 3 along the angle β1 from the first position p0, the control mechanism 20 controls the main body 10 to rotate by the angle β2 in the second direction and enter the operating area 4. The second direction is opposite to the first direction. For example, if the first direction is clockwise, the second direction is counterclockwise, and vice versa. Furthermore, the angle β2 is the angle formed by the difference between the first angle α0 and the angle β1, i.e., β2 = 360° - (α0 - β1).
[0114] After the main body 10 rotates by an angle β2 along the second direction, the direction of the main body 10 is parallel to the tangent direction nn (i.e., the standard lateral path direction) of the boundary line 3 at the boundary feature point. At this time, the control mechanism 20 can control the main body 10 to enter the operation area 4 along the tangent direction nn of the boundary line 3 at the boundary feature point, thereby starting to execute... Figure 9 The first standard lateral path direction operation shown is p1→p2.
[0115] Understandable. Figure 8 and Figure 9 The invention has been described using the example of the stopping point (first position p0) of the walking robot 1 being before a boundary feature point. However, those skilled in the art will understand that the solution of the present invention can be easily extended to the case where the stopping point is after a boundary feature point. For example, assuming that the first direction is clockwise when the first position is before a boundary feature point, then the first direction can be counterclockwise when the first position is after a boundary feature point. In either case, the stopping point should be uniformly located before or uniformly located after a boundary feature point.
[0116] In addition, in order to reduce the wear and tear on the operating area 4 caused by repeated walking at the stop point p0 (for example, in the case that the walking robot 1 is a lawnmower robot), different advance or delay amounts can be set to obtain different stop points p0 each time.
[0117] The above combination Figures 5 to 9 Other aspects of the invention are described, wherein the walking robot 1 according to the invention is able to operate within the operating area 4 under the control of the control mechanism 20, making it easier to traverse the entire operating area 4. Furthermore, in these aspects, even if the walking robot 1 is equipped with a low-precision positioning device, the control mechanism 20 can still control the walking robot 1 to traverse the entire operating area 4, thereby avoiding significant omissions.
[0118] Various implementations of the present invention have been described above in conjunction with the accompanying drawings. In one or more exemplary implementations, the functions described in this application can be implemented using hardware, software, firmware, or any combination thereof. For example, if implemented in software, the functions implemented by the control mechanism 20 can be stored as one or more instructions or codes on a computer-readable medium (such as memory 28), or distributed as one or more instructions or codes on a computer-readable medium.
[0119] Those skilled in the art will also understand that the control mechanism 20 or its components described in connection with the various embodiments of this application can be implemented as multiple discrete hardware components or integrated into a single hardware component, such as a processor. For example, the main controller 22, odometer acquisition module 24, or heading acquisition module 26 of the control mechanism 20 or its components described in connection with this disclosure can be implemented or performed using a general-purpose processor, digital signal processor (DSP), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof for performing the functions described herein.
[0120] The foregoing description of this disclosure is intended to enable any person skilled in the art to implement or use this disclosure. Various modifications to this disclosure will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other variations without departing from the spirit and scope of this disclosure. Therefore, this disclosure is not limited to the examples and designs described herein, but is consistent with the broadest scope of the principles and novel features disclosed herein.
Claims
1. A walking robot, comprising: main body; as well as The control mechanism is configured to perform the following operations: The system controls the main body to move along the boundary line of a predetermined operating area, and samples the movement path to obtain data of a set of all boundary sampling points on the boundary line. Based on the set of boundary sampling points obtained on the boundary line, a threshold number or a range of threshold number of boundary feature points for the predetermined operation area is determined. The number of boundary sampling points with curvature greater than the curvature threshold in the set of boundary sampling points is compared with the threshold number or the range of threshold number. Multiple boundary sampling points whose number equals the threshold number or falls within the range of the threshold number are taken as boundary feature points to form map information of the predetermined operation area. The map information includes the coordinates of the multiple boundary feature points.
2. The walking robot of claim 1, wherein comparing the number of boundary sampling points in the set of boundary sampling points with curvature greater than a curvature threshold with the number threshold or a range of number thresholds, and taking multiple boundary sampling points whose number equals the number threshold or falls within the range of the number threshold as boundary feature points, comprises: Set a curvature threshold for the predetermined operating region; Curve fitting is performed on the set of boundary sampling points to calculate the curvature of each boundary sampling point, and the curvature of each boundary sampling point is compared with the curvature threshold to determine a first number of boundary sampling points among all boundary sampling points whose curvature is greater than the curvature threshold; The first quantity is compared with the quantity threshold or the quantity threshold range to determine whether the first quantity is equal to the quantity threshold or falls within the quantity threshold range; as well as In response to determining that the first quantity is equal to or falls within the range of the quantity threshold, the boundary sampling points of the first quantity are selected as the boundary feature points.
3. The walking robot as described in claim 2, wherein the operation further includes: In response to determining that the first quantity is not equal to the quantity threshold or does not fall within the quantity threshold range, at least two distinct proper subsets of the set of boundary sampling points are determined, wherein each proper subset has the same number of elements, which is n-( k -1), where n is the number of boundary sampling points in the set of boundary sampling points. k It is the number of the at least two proper subsets. k ≥2; The curvature of the boundary sampling points in the at least two true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least two proper subsets whose curvature is greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset whose curvature is equal to or falls within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the at least two proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
4. The walking robot of claim 3, wherein the operation further includes: In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in the at least two proper subsets is not equal to the number threshold or does not fall within the range of the number threshold, at least three distinct proper subsets of the set of boundary sampling points are determined, wherein each proper subset has the same number of elements, which is n-( l -1), where n is the number of boundary sampling points in the set of boundary sampling points. l It is the number of the at least three proper subsets, and l > k ; The curvature of the boundary sampling points in the at least three true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least three proper subsets with curvature greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset that are equal to or fall within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the three proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
5. The walking robot as described in claim 2, wherein the operation further includes: In response to determining that the first quantity is not equal to the quantity threshold or does not fall within the quantity threshold range, at least two proper subsets of the set of boundary sampling points are determined, wherein the elements of each proper subset are distinct, and the number of elements in each proper subset is substantially equal to 1 / 3 the number of elements in the set. k ,in k It is the number of the at least two proper subsets. k ≥2; The curvature of the boundary sampling points in the at least two true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least two proper subsets whose curvature is greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset whose curvature is equal to or falls within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the at least two proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
6. The walking robot of claim 5, wherein the operation further includes: In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in the at least two proper subsets is not equal to the number threshold or does not fall within the range of the number threshold, at least three proper subsets of the set of boundary sampling points are determined, wherein the elements of each proper subset are distinct, and the number of elements in each proper subset is substantially equal to 1 / 3 the number of elements in the set. l ,in l It is the number of the at least three proper subsets, and l > k , The curvature of the boundary sampling points in the at least three true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least three proper subsets with curvature greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset that are equal to or fall within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the three proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
7. The walking robot as claimed in any one of claims 3 to 6, wherein the spacing between adjacent elements in each proper subset is substantially equal.
8. The walking robot as described in any one of claims 1 to 6, wherein the control mechanism further comprises: A mileage acquisition module is configured to acquire the walking mileage of the walking robot; as well as A direction acquisition module is configured to acquire the heading deflection angle of the walking robot. The control mechanism samples the boundary line by sampling the boundary line at predetermined intervals of mileage or time, and determines the coordinates of the boundary sampling point based on the travel mileage obtained by the mileage acquisition module and the heading deflection angle obtained by the direction acquisition module.
9. The walking robot of claim 7, wherein the control mechanism further comprises: A mileage acquisition module is configured to acquire the walking mileage of the walking robot; as well as A direction acquisition module is configured to acquire the heading deflection angle of the walking robot. The control mechanism samples the boundary line by sampling the boundary line at predetermined intervals of mileage or time, and determines the coordinates of the boundary sampling point based on the travel mileage obtained by the mileage acquisition module and the heading deflection angle obtained by the direction acquisition module.
10. A walking robot system, comprising: The walking robot as described in any one of claims 1 to 9, and A base station, wherein the base station includes a power supply module for supplying power to the boundary line connected thereto, so as to generate electromagnetic signals around the boundary line.
11. A method for controlling a walking robot, comprising: The robot's main body is controlled to walk along the boundary line of a predetermined operating area, and the walking path is sampled to obtain data of the set of all boundary sampling points on the boundary line. Based on the set of boundary sampling points obtained on the boundary line, a threshold condition for the number of boundary feature points for the predetermined operation area is determined, the threshold condition including a number threshold or a number threshold range; and the number of boundary sampling points with curvature greater than the curvature threshold in the set of boundary sampling points is compared with the number threshold or the number threshold range, and multiple boundary sampling points whose number of boundary sampling points meets the number threshold condition are taken as boundary feature points to form map information of the predetermined operation area, the map information including the coordinates of the multiple boundary feature points; Specifically, when the number of boundary sampling points is equal to or falls within the range of the number threshold, the number threshold condition is determined to be satisfied.
12. The method of claim 11, wherein comparing the number of boundary sampling points in the set of boundary sampling points with curvature greater than a curvature threshold with the number threshold or a range of number thresholds, and selecting multiple boundary sampling points whose number satisfies the number threshold or a range of number thresholds as boundary feature points, comprises: Set a curvature threshold for the predetermined operating region; Curve fitting is performed on the set of boundary sampling points to calculate the curvature of each boundary sampling point, and the curvature of each boundary sampling point is compared with the curvature threshold to determine a first number of boundary sampling points among all boundary sampling points whose curvature is greater than the curvature threshold; The first quantity is compared with the quantity threshold or the quantity threshold range to determine whether the first quantity meets the quantity threshold condition; as well as In response to determining that the first quantity satisfies the quantity threshold condition, the boundary sampling points of the first quantity are selected as the boundary feature points.
13. The method of claim 12, further comprising: In response to determining that the first quantity is not equal to the quantity threshold or does not fall within the quantity threshold range, at least two distinct proper subsets of the set of boundary sampling points are determined, wherein each proper subset has the same number of elements, which is n-( k -1), where n is the number of boundary sampling points in the set of boundary sampling points. k It is the number of the at least two proper subsets. k ≥2; The curvature of the boundary sampling points in the at least two true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least two proper subsets whose curvature is greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset whose curvature is equal to or falls within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the at least two proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
14. The method of claim 13, further comprising: In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in the at least two proper subsets is not equal to the number threshold or does not fall within the range of the number threshold, at least three distinct proper subsets of the set of boundary sampling points are determined, wherein each proper subset has the same number of elements, which is n-( l -1), where n is the number of boundary sampling points in the set of boundary sampling points. l It is the number of the at least three proper subsets, and l > k ; The curvature of the boundary sampling points in the at least three true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least three proper subsets with curvature greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset that are equal to or fall within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the three proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
15. The method of claim 12, further comprising: In response to determining that the first quantity is not equal to the quantity threshold or does not fall within the quantity threshold range, at least two proper subsets of the set of boundary sampling points are determined, wherein the elements of each proper subset are distinct, and the number of elements in each proper subset is substantially equal to 1 / 3 the number of elements in the set. k ,in k It is the number of the at least two proper subsets. k ≥2; The curvature of the boundary sampling points in the at least two true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least two true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least two proper subsets whose curvature is greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset whose curvature is equal to or falls within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the at least two proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
16. The method of claim 14, further comprising: In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in the at least two proper subsets is not equal to the number threshold or does not fall within the range of the number threshold, at least three proper subsets of the set of boundary sampling points are determined, wherein the elements of each proper subset are distinct, and the number of elements in each proper subset is substantially equal to 1 / 3 the number of elements in the set. l ,in l It is the number of the at least three proper subsets, and l > k , The curvature of the boundary sampling points in the at least three true subsets is compared with the curvature threshold to determine the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold. Determine whether the number of boundary sampling points in the at least three true subsets whose curvature is greater than the curvature threshold is equal to the number threshold or falls within the range of the number threshold; as well as In response to determining that the number of boundary sampling points in one of the at least three proper subsets with curvature greater than the curvature threshold is equal to or falls within the range of the number threshold, the boundary sampling points in the proper subset that are equal to or fall within the range of the number threshold are selected as the boundary feature points, or In response to determining that the number of boundary sampling points with curvature greater than the curvature threshold in more than one of the three proper subsets is equal to or falls within the range of the number threshold, a boundary sampling point in any one of the more than one proper subset is selected as the boundary feature point.
17. The method of any one of claims 13 to 16, wherein the spacing between adjacent elements in each proper subset is substantially equal.
18. The method of any one of claims 11 to 16, wherein The boundary line is sampled at predetermined mileage or time intervals, and the coordinates of the boundary sampling points are determined based on the walking mileage obtained by the mileage acquisition module and the heading deflection angle obtained by the direction acquisition module.
19. The method of claim 17, wherein The boundary line is sampled at predetermined mileage or time intervals, and the coordinates of the boundary sampling points are determined based on the walking mileage obtained by the mileage acquisition module and the heading deflection angle obtained by the direction acquisition module.