Control method, system and device for mobile robot
By adjusting and optimizing the boundary points of images captured by the mobile robot, adjusted boundary points are generated. The robot is then controlled to travel to the nearest boundary point for tracking, which solves the problem of low efficiency in boundary recognition and tracking of mobile robots in complex environments and achieves efficient boundary tracking.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- JIANGSU DONGCHENG GARDEN MASCH CO LTD
- Filing Date
- 2025-09-18
- Publication Date
- 2026-06-30
AI Technical Summary
In existing technologies, mobile robots struggle to accurately identify and track effective walkable boundary segments when recognizing and tracking work area boundaries, especially in complex environments where boundary recognition and tracking efficiency is low.
By extracting initial boundary points from images captured by a mobile robot, adjusting and optimizing them, generating adjusted boundary points, and controlling the robot to travel to the nearest boundary point for tracking, the robot uses a camera to identify and track boundary segments one by one. Combined with smoothing and indentation processing, the accuracy and efficiency of boundary tracking are improved.
This technology enables mobile robots to accurately identify and track work area boundaries in complex environments, improving boundary tracking efficiency and reducing the time and computational resource consumption required for robot tracking.
Smart Images

Figure CN122308446A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the field of machine control technology, and in particular to a control method, system and device for a mobile robot. Background Technology
[0002] Self-moving devices can move and operate automatically, providing convenience for various fields such as home life and industrial manufacturing. In home life, examples include lawnmower robots and cleaning robots. Self-moving devices have a work area. For self-moving devices with planned operations, a map representing the work area must first be created. The map first reflects the outer boundary of the work area, and can also show complex environments such as internal obstacles and isolated areas. Then, the self-moving device can move and operate according to the path within the work area based on the map. Users can even customize the map for operation control.
[0003] Currently, for example, with lawnmower robots, the traditional mapping approach involves placing boundary limiting devices, such as power cables, on the outer boundary of the work area. Boundary sensors on the lawnmower robot are used to detect these boundary cables. When the robot departs from the charging station, it travels around the outer boundary of the work area based on the boundary sensors and boundary limiting devices and returns to the charging station. During the tracking process along the outer boundary, the robot's positioning device continuously obtains boundary position information, and a map representing the outer boundary is built from the surface based on a series of boundary position information.
[0004] Because physical boundary demarcation devices require manual placement and are costly, a new mapping technology has emerged in recent years: boundaryless mapping. One approach involves a mobile robot equipped with a camera to capture real-time images. These images identify the boundaries of the work area, including the outer boundary of the work area and even the boundaries of isolated islands and obstacles. The robot then moves towards and tracks the outer boundary based on the real-time boundary identified by the camera. During this tracking process, the robot's positioning device continuously acquires boundary position information and ultimately builds a map including the outer boundary information. Similarly, isolated island boundaries and obstacles can be created and updated on the map. Accurate map creation is crucial for subsequent work. However, due to the complexity of the work area environment and the numerous and varied boundaries representing certain limits, identifying, approaching, and accurately tracking valid walkable boundary segments using only a single camera device, while continuously identifying the next valid walkable boundary segment during tracking, presents a significant challenge in this technology. Summary of the Invention
[0005] The purpose of this invention is to provide a control method, system, and device for a mobile robot, enabling the mobile robot to continuously identify, approach, and accurately track effective trackable boundary segments by means of a camera during boundary tracking.
[0006] To address the aforementioned technical problems, embodiments of the present invention provide a control method for a mobile robot, comprising: extracting initial boundary points representing the boundaries of a working area from an image captured by the mobile robot; adjusting the initial boundary points to obtain adjusted boundary points, wherein the adjusted boundary points are the boundary points for which the mobile robot actually performs automatic online tracking; connecting the adjusted boundary points to obtain the tracking boundary; and controlling the mobile robot to travel to the adjusted boundary point closest to its current position and tracking the tracking boundary.
[0007] Embodiments of the present invention also provide a control system for a mobile robot, comprising: a boundary point extraction module for extracting initial boundary points representing the boundary of a working area from an image captured by the mobile robot; a boundary point adjustment module for adjusting the initial boundary points to obtain adjusted boundary points, wherein the adjusted boundary points are the boundary points for the mobile robot to automatically track online; a boundary line generation module for connecting the adjusted boundary points to obtain the tracking boundary; and a movement tracking module for controlling the mobile robot to move to the adjusted boundary point closest to its current position and to track the tracking boundary.
[0008] Embodiments of the present invention also provide a mobile robot device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the above-described mobile robot control method.
[0009] In this embodiment of the invention, during the process of tracking the boundary of the work area before mapping, after extracting the initial boundary points of the work area boundary, the boundary points are optimized and adjusted to facilitate tracking by the mobile robot. The optimized boundary points are then used as the actual boundary points for tracking by the mobile robot. This allows the mobile robot to continuously identify, approach, and accurately track effective trackable boundary segments using only the camera, thereby achieving tracking of the work area boundary. Simultaneously, the boundary points are extracted and adjusted to generate the tracking boundary, and the robot travels to the boundary point closest to its current position for tracking. This allows the mobile robot to select the adjusted boundary point closest to its current position as the target point for tracking from any location, eliminating the need to travel to a designated location for tracking the lawn boundary, thus improving the efficiency of the mobile robot's boundary tracking.
[0010] In addition, the step of adjusting the initial boundary points to obtain the adjusted boundary points includes: filtering out the clustered boundary points in the initial boundary points and extracting continuous boundary points; obtaining the current position of the mobile robot, selecting the boundary tracking starting point closest to the current position from the continuous boundary points according to the current position; and smoothing the continuous boundary points based on the boundary tracking starting point.
[0011] In addition, before extracting continuous boundary points, the method further includes: acquiring images captured by the mobile robot in real time, acquiring the relative position of the working area in the image and the boundary in the image; acquiring a preset tracking direction, determining whether boundary point flipping processing is required based on the relative position and the preset tracking direction; if boundary point flipping processing is required, acquiring the current position of the mobile robot, and flipping the filtered boundary points.
[0012] In addition, after smoothing the continuous boundary points based on the boundary tracking starting point, the method further includes: performing indentation processing on the smoothed boundary points, wherein the indentation processing includes: acquiring images captured by the mobile robot in real time, performing recognition and detection on the images, and obtaining a preset indentation distance for indentation processing; obtaining smooth polyline segments based on the smoothed boundary points, obtaining the vector of the smooth polyline segments, and performing indentation calculation on the vector of the smooth polyline segments using the preset indentation distance.
[0013] In addition, the movement control of the mobile robot to the nearest adjusted boundary point to its current position and tracking the tracking boundary includes: obtaining the current position of the mobile robot, selecting the nearest adjusted boundary point to the current position as the target boundary point; calculating the attitude deviation and position deviation of the mobile robot based on the target boundary point and a preset tracking direction; adjusting the movement control speed according to a preset speed, and adjusting the movement control angular velocity according to the attitude deviation and the position deviation; and controlling the mobile robot to move to the target boundary point according to the movement control speed and the movement control angular velocity.
[0014] In addition, the tracking of the tracking boundary includes: determining whether the current tracking direction of the mobile robot is consistent with the preset tracking direction based on the position of the lawn; if the current tracking direction is consistent with the preset tracking direction, then tracking is performed along the tracking boundary according to the current tracking direction; if the current tracking direction is inconsistent with the preset tracking direction, then the mobile robot is controlled to rotate 180° in place and then track along the tracking boundary line.
[0015] Additionally, the tracking of the tracking boundary includes: when the tracking boundary has a corner, obtaining the current position of the mobile robot; when the current position approaches the corner, changing the working state of the mobile robot to a corner state; in the corner state, acquiring the image captured by the mobile robot in real time, and detecting whether the image contains the working area and the corner; if the image does not detect the working area and the corner, then maintaining the motion control parameters corresponding to the previous frame image and continuing to move a preset distance, controlling the mobile robot to rotate in place, and acquiring the image captured by the mobile robot in real time until the working area boundary is detected in the image.
[0016] In addition, before extracting the initial boundary point representing the working area boundary from the image captured by the mobile robot, the method further includes: real-time detection of whether the image captured by the mobile robot simultaneously contains the working area and the working area boundary; if neither the working area nor the working area boundary is detected in the image, the mobile robot is controlled to rotate in place by a preset angle in a preset rotation direction, and during the rotation, the image is continuously detected to determine whether both the working area and the working area boundary are simultaneously contained; if the rotation changes from negative to positive, the rotation is stopped; if, after the rotation is completed, neither the working area nor the working area boundary is detected in the image, a shutdown alarm is triggered; if only the working area is detected in the image and no working area boundary is detected, the mobile robot is controlled to travel in a straight line until the image simultaneously contains both the working area and the working area boundary is detected. Attached Figure Description
[0017] One or more embodiments are illustrated by way of example with reference numerals in the accompanying drawings. These illustrations do not constitute a limitation on the embodiments. Elements with the same reference numerals in the drawings are denoted as similar elements. Unless otherwise stated, the figures in the drawings are not to be limited by scale.
[0018] Figure 1 This is a flowchart of a mobile robot control method provided in an embodiment of this application;
[0019] Figure 2 This is a flowchart of an embodiment of the method for indenting initial boundary points provided in this application;
[0020] Figure 3 This is a comparison image before and after the adjustment of the tracking boundary points provided in an embodiment of this application;
[0021] Figure 4 This is a schematic diagram of the internal structure of a control system for a mobile robot provided in an embodiment of this application;
[0022] Figure 5 This is a schematic diagram of the internal structure of a mobile robot device provided in an embodiment of this application. Detailed Implementation
[0023] Accurate map creation is crucial for subsequent work. However, due to the complexity of the work area's environmental information and the numerous and varied boundaries representing certain limits, identifying, approaching, and accurately tracking valid walkable boundary segments using only a single camera device, while continuously identifying the next valid walkable boundary segment during tracking, presents a significant challenge in this technology. Therefore, a control method, system, and device for mobile robots are needed to solve these technical problems.
[0024] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the various embodiments of the present invention will be described in detail below with reference to the accompanying drawings. However, those skilled in the art will understand that many technical details are presented in the various embodiments of the present invention to facilitate a better understanding of this application. However, the technical solutions claimed in this application can be implemented even without these technical details and various variations and modifications based on the following embodiments. The division of the various embodiments below is for ease of description and should not constitute any limitation on the specific implementation of the present invention. The various embodiments can be combined with and referenced by each other without contradiction.
[0025] One embodiment of the present invention relates to a control method for a mobile robot, which can be applied to mobile robots, such as lawnmower robots and cleaning robots. The control method for the mobile robot includes: extracting initial boundary points representing the boundary of a working area from an image captured by the mobile robot; adjusting the initial boundary points to obtain adjusted boundary points, which are the boundary points that the mobile robot actually automatically tracks; connecting the adjusted boundary points to obtain the tracking boundary; and controlling the mobile robot to travel to the adjusted boundary point closest to its current position and track the tracking boundary. Before mapping, during the process of tracking the boundary of the work area, the initial boundary points of the work area are extracted. These boundary points are then optimized for easy tracking by the mobile robot. The optimized boundary points are then used as the actual tracking boundary points for the mobile robot. This allows the robot to continuously identify, approach, and accurately track effective trackable boundary segments using only the camera, thus achieving boundary tracking of the work area. Simultaneously, the extraction and adjustment of boundary points generate the tracking boundary, and the robot travels to the boundary point closest to its current position for tracking. This allows the mobile robot to select the nearest adjusted boundary point as the target point for tracking from any position, eliminating the need to travel to a designated location for grass boundary tracking, thereby improving the efficiency of boundary tracking. The implementation details of the mobile robot control method according to an embodiment of the present invention are described below. These details are provided for ease of understanding and are not essential for implementing this solution.
[0026] It is worth noting that the mobile robot control method provided in this application is a processing flow during the edge tracking of the work area boundary before the mobile robot performs mapping. In actual operation, the mobile robot only begins to construct a virtual map based on its localization function after completing the tracking of the work area boundary, such as generating the virtual boundary of the virtual map and generating the work path. That is, the tracking boundary in this application is not the same boundary as the virtual boundary of the virtual map after mapping; the tracking boundary in this application is the boundary line tracked before mapping of the work area boundary. For the tracking boundary during the work area boundary tracking process, this application uses the following mobile robot control method to identify and track the boundary line:
[0027] like Figure 1 As shown, in step 101, the initial boundary points representing the working area boundary are extracted from the image captured by the mobile robot.
[0028] Specifically, the mobile robot is a smart lawnmower, and its working area is a lawn. During the mapping process of the smart lawnmower, the image frames acquired by the camera of the smart lawnmower may include various objects such as lawn, lawn boundaries, or obstacles. By processing the images, the types of objects can be identified, including lawn, work area boundaries, etc. The boundaries of the lawn work area include, but are not limited to, the boundary between grass and non-grass, and impassable areas such as fences, walls, steps, obstacles, and pools along the lawn. After identifying the boundaries of the lawn work area, initial boundary points representing the boundaries are extracted. These initial boundary points are multiple scattered points.
[0029] In one embodiment of the present invention, before extracting the boundary points of the lawn boundary, the method further includes lawn boundary recognition, which includes: acquiring images captured by a camera in real time, recognizing the images, and detecting whether the images contain lawn and lawn boundaries; if the images only contain lawn, controlling the lawnmower to travel in a straight line until the images are detected to contain lawn and lawn boundaries; if the images do not contain lawn and lawn boundaries, controlling the lawnmower to rotate in place by a preset angle in a preset rotation direction, and detecting in real time whether the images contain lawn and lawn boundaries, rotating in place until the images contain lawn and lawn boundaries; if the images still do not contain lawn and lawn boundaries after the rotation in place is completed, stopping the machine and triggering an alarm.
[0030] Specifically, the preset rotation direction is counterclockwise, but it can also be clockwise, depending on the actual operational needs. Furthermore, the preset angle is 360°, meaning one full rotation. This preset angle can also be set according to actual operational needs, such as 180° or 90°, etc., without limitation in this application. Setting the preset angle to 360°, or an angle greater than 360°, ensures complete detection of the environment surrounding the current position of the lawnmower, thereby determining whether there is grass and grass boundaries near the lawnmower.
[0031] It should be noted that in actual work, the boundary points appearing in a frame of an image are used as a set of initial boundary points for adjustment.
[0032] In step 102, the initial boundary point is adjusted to obtain the adjusted boundary point, which is the boundary point for the mobile robot to automatically track online.
[0033] In one embodiment of the present invention, adjusting the initial boundary points to obtain adjusted boundary points includes: filtering out clustered boundary points from the initial boundary points and extracting continuous boundary points; obtaining the current position of the mobile robot, selecting the boundary tracking starting point closest to the current position from the continuous boundary points based on the current position; and smoothing the continuous boundary points based on the boundary tracking starting point.
[0034] Specifically, the process of filtering out clustered boundary points from the initial boundary points includes: calculating the Euclidean distance between the initial boundary points and filtering out the initial boundary points whose calculation results do not meet preset conditions.
[0035] Specifically, this application uses Euclidean distance calculation to filter out clustered initial boundary points in an image. The process involves calculating the Euclidean distance between the initial boundary points and filtering out those whose calculations do not meet preset conditions. Specifically, this includes: traversing the initial boundary points, calculating the Euclidean distance (Mindis) between the first initial boundary point closest to the lawnmower in the current image and the Euclidean distance (Maxdis) between the second initial boundary point farthest from the lawnmower in the current image, calculating the difference between the Euclidean distances of the first and second initial boundary points, and determining whether the difference is less than a preset difference. If it is less than the preset difference, the boundary point data in the current image is deemed invalid, and the initial boundary points in the current image are filtered out. The preset difference is 0.1m, but the size of the preset difference can be adjusted according to actual operational needs, such as 0.3m, 0.5m, etc., and this application does not impose any limitations on this.
[0036] After filtering out aggregated invalid initial boundary points, consecutive boundary points are extracted and the current position of the mobile robot is obtained. Based on the current position, the boundary tracking starting point closest to the current position is selected from the consecutive boundary points. The consecutive boundary points are then smoothed based on the boundary tracking starting point. In one embodiment of the present invention, before extracting consecutive boundary points, the method further includes: acquiring an image captured by the mobile robot in real time, and acquiring the relative position of the working area in the image and the boundary in the image; acquiring a preset tracking direction, and determining whether boundary point flipping processing is required based on the relative position and the preset tracking direction; if boundary point flipping processing is required, acquiring the current position of the mobile robot, and flipping the filtered boundary points.
[0037] Specifically, before the lawnmower goes online, there is no need to adjust its direction; it only needs to travel to the nearest boundary point. After going online, the tracking direction is adjusted according to the direction of the lawn and the preset tracking direction. The mobile robot captures images in real time, obtaining the relative position of the working area in the image and the boundary in the image. Based on the relative position and the preset tracking direction, it determines whether boundary point flipping is necessary. That is, it determines whether to flip the initial boundary points in the image based on the lawn position and the preset tracking direction. If the preset tracking direction is counterclockwise, but the lawn is to the right of the boundary point, then the initial boundary points in the current image are flipped; or, if the preset tracking direction is clockwise, but the lawn is to the left of the boundary point, then the initial boundary points in the current image are flipped. The number of initial boundary points flipped is less than the preset number of flips, which can be adjusted according to actual operational needs, such as 100, 150, 80, etc. It should be noted that whether or not boundary points need to be flipped depends on the actual working situation. Flipping boundary points is not a mandatory step. If the position of the boundary line in the lawn and the image indicates that it is the same as the preset tracking direction, then there is no need to flip the initial boundary points. Continuous boundary points can be extracted directly and subsequent boundary point optimization processing can be performed.
[0038] Further, extracting continuous boundary points specifically refers to filtering out initial boundary points with a spacing greater than a preset continuous distance, as well as initial boundary points before the adjusted starting point. Due to the camera's large field of view, multiple discontinuous boundary points will be extracted. To maintain the continuity of the initial boundary points, it is necessary to filter out initial boundary points with a spacing greater than the preset continuous distance. Using the initial boundary point closest to the current position of the mobile robot as the extraction starting point, the remaining boundary points are extracted sequentially. Simultaneously, it is determined whether the distance between the next boundary point to be extracted and the currently extracted boundary point is less than the preset continuous distance, until a boundary point to be extracted with a distance greater than the preset distance is encountered. The boundary point to be extracted with a distance greater than the preset distance is designated as the failure starting boundary point, and both the failure starting boundary point and subsequent initial boundary points are filtered out. In a specific embodiment, the preset continuous distance is 0.5m. The preset continuous distance can also be adjusted according to actual operational needs, such as 0.3m, 0.8m, 1m, etc., and this application does not impose any limitations on this. In addition, to ensure the fitting accuracy of the boundary, the initial boundary points before the starting point of the continuity screening are filtered out while performing continuity screening.
[0039] After filtering and selecting the initial boundary points, the remaining boundary points are smoothed. Unsmoothed boundary points cause the lawnmower to frequently adjust its posture during actual tracking, reducing work efficiency and consuming computing resources, resulting in wasted costs. Therefore, boundary point smoothing is performed to improve the lawnmower's work efficiency and reduce computing resource consumption during actual operation.
[0040] Specifically, by traversing the retained initial boundary points, the starting point S(x1,y1) and the ending point B(x2,y2) among the initial boundary points are determined; connecting the starting point and the ending point with a straight line, we can obtain:
[0041] (y1-y2)x+(x2-x1)y+x1y2-x2y1=0
[0042] Iterate through the remaining intermediate points of the retained initial boundary points, excluding the start and end points, and calculate the distance from each intermediate point to the aforementioned line:
[0043]
[0044] According to d i The result determines the farthest distance d max Determine d max Is it greater than the preset smoothing filter distance d? smooth If d max Greater than the preset smoothing filter distance d smooth Then it will be with d max The corresponding initial boundary point is inserted between the starting point A(x1,y1) and the ending point B(x2,y2), forming two straight lines. The line calculation and distance calculation are then re-divided as described above until d. max Less than the preset smoothing filter distance d smooth .
[0045] Because lawnmowers have a certain length and width, and the reference points for positioning and visual processing are located inside the machine, lawnmowers typically track by centering across boundary lines. However, in actual mowing operations, centering across boundary lines can easily cause collisions during boundary tracking. Therefore, after obtaining the smoothed initial boundary points, it is necessary to perform indentation processing on the retained initial boundary points, such as... Figure 2 As shown:
[0046] In step 201, the shrink distance is determined. The first shrink distance, Shrink, is determined based on the obstacle boundaries identified in the image captured by the camera. obs For unobstructed ordinary boundaries, i.e., boundaries where centering and cross-line tracking can be safely performed, the second indentation distance is determined as Shrink. distThe first and second indentation distances can be set according to the actual work scenario requirements, and this application does not impose any restrictions on them.
[0047] In step 202, the smoothed polyline segments are extracted for boundary line vector calculation. The initial boundary point P after smoothing is used as the starting point. i For example, let P i The initial line segment is used as a polyline segment for indentation calculation, where P... i P is the starting point of the broken line segment. i+1 P is the middle of the broken line segment. i+2 This is the endpoint of the broken line segment.
[0048] When the angle formed by the broken line segment within the lawn is less than 180°, then
[0049] When the angle formed by the broken line segment within the lawn is greater than 180°, then
[0050] in, For P i and P i+1 The resulting boundary line vector, For P i+1 and P i+2 The resulting boundary line vector.
[0051] In step 203, the inflection points of the broken line segment are indented:
[0052]
[0053] In step 204, the indentation direction of the starting and ending points of the polyline segment is calculated. The slope of the first polyline segment is calculated as k1, and the slope of the last polyline segment is calculated as k2.
[0054] Taking the direction the lawnmower is facing as the front, if the lawn is to the left of the boundary line, then the starting point should be recessed in that direction. End point indentation direction
[0055] When the lawn is to the right of the boundary line, the starting point is indented in the direction of... End point indentation direction
[0056]
[0057] Here, normalization is the angle normalization calculation.
[0058] In step 205, the indentation positions of the start and end points are calculated.
[0059] P start(x)=P1(x)+dis*cos(k start )
[0060] P start (y)=P1(y)+dis*sin(k start )
[0061] P end (x)=P2(x)+dis*cos(k end )
[0062] P end (y)=P2(y)+dis*sin(k end )
[0063] Finally, the indentation position P of the starting point of the polyline segment is obtained. start (x,y) and the indentation position P of the starting point of the broken line segment end (x,y) is used to calculate the indentation positions of all retained and smoothed initial boundary points in sequence, thus obtaining the adjusted boundary points.
[0064] like Figure 1 Step 103 involves connecting the adjusted boundary points to obtain the tracking boundary. The comparison between the generated tracking boundary and the boundary point adjustment process is shown below. Figure 3 As shown.
[0065] In step 104, the mobile robot is moved to the adjusted boundary point closest to its current position and the tracking boundary is tracked.
[0066] In one embodiment of the present invention, the movement control of the mobile robot to the adjusted boundary point closest to its current position and tracking the tracking boundary includes: obtaining the current position of the mobile robot, selecting the adjusted boundary point closest to the current position as the target boundary point; calculating the attitude deviation and position deviation of the mobile robot based on the target boundary point and a preset tracking direction; adjusting the speed of the movement control according to a preset speed, and adjusting the angular velocity of the movement control according to the attitude deviation and the position deviation; and controlling the mobile robot to move to the target boundary point according to the movement control speed and the movement control angular velocity.
[0067] Step 104 above refers to the step of controlling the lawnmower to perform the online operation. Specifically, the attitude deviation and position deviation of the lawnmower are calculated based on the target boundary point P1 and the preset tracking direction. The attitude deviation Δyaw can be calculated using the following formula:
[0068] Δyaw = normalization(k1 - yaw)
[0069] Where yaw is the current posture of the lawnmower, and k1 is the posture when it is on the target boundary point, which is the slope of the first segment of the broken line mentioned above.
[0070] Secondly, the positional deviation Δd can be calculated using the following formula:
[0071] Δd=P1(x)*sin(Δyaw)-P1(y)*cos(Δyaw)
[0072] Furthermore, the speed of the lawnmower's movement is controlled by a preset speed, i.e., V = V C The angular velocity ω of the lawnmower can be calculated based on the attitude and position deviations using the following formula:
[0073] ω=k h *Δyaw+k d *Δd
[0074] Where, k h k is the attitude control coefficient. d Here, k represents the position control coefficient. h and position control coefficient k d The preset control coefficients can be adjusted during actual operation based on the lawnmower model or specific conditions. h and position control coefficient k d Adjustments may be made, but this application does not impose any restrictions.
[0075] In one embodiment of the present invention, tracking the tracking boundary includes: determining whether the current tracking direction of the mobile robot is consistent with the preset tracking direction based on the position of the lawn; if the current tracking direction is consistent with the preset tracking direction, then tracking is performed along the tracking boundary according to the current tracking direction; if the current tracking direction is inconsistent with the preset tracking direction, then the mobile robot is controlled to rotate 180° in place and then track along the tracking boundary line.
[0076] In one embodiment of the present invention, tracking the tracking boundary includes: when the tracking boundary has a corner, obtaining the current position of the mobile robot; when the current position approaches the corner, changing the working state of the mobile robot to a corner state; in the corner state, acquiring an image captured by the mobile robot in real time, and detecting whether the image contains the working area and the corner; if the image does not detect the working area and the corner, then maintaining the movement control parameters corresponding to the previous frame image and continuing to move a preset distance, controlling the mobile robot to rotate in place, and acquiring the image captured by the mobile robot in real time until the working area boundary is detected in the image. That is, after the lawnmower goes online, it is necessary to determine whether the current tracking direction is consistent with the preset direction based on the detected image, and then make adjustments. For example, if the preset tracking direction is counterclockwise, and the lawn is detected to the right of the boundary line when going online, then the lawnmower rotates 180 degrees clockwise in place; if the preset tracking direction is clockwise, and the lawn is detected to the left of the boundary line when going online, then the lawnmower rotates 180 degrees counterclockwise in place. It should be noted that the specific rotation direction of the lawnmower after it goes online can also be adjusted and set individually according to the actual working conditions. For example, when the target boundary point of the lawnmower goes online is the inflection point of the tracking boundary, it can rotate according to the angle of the corner. This application does not limit the specific rotation angle of the lawnmower after it goes online.
[0077] In addition, if there are any abnormalities after the lawnmower is put into operation, an anomaly elimination strategy can be implemented to eliminate the abnormalities.
[0078] In one embodiment of this application, if interference causes the lawnmower to deviate from the preset tracking direction and detect a reverse boundary, the tracking direction needs to be adjusted back to the preset tracking direction to eliminate the anomaly. If the preset tracking direction is clockwise, and the lawn is detected to the right of the boundary line during tracking, the lawnmower rotates clockwise in place until the lawn is detected to the left of the boundary line. If the preset tracking direction is counterclockwise, and the lawn is detected to the left of the boundary line during tracking, the lawnmower rotates counterclockwise in place until the lawn is detected to the right of the boundary line. After completing the in-place rotation until the lawn appears in the preset direction, the lawnmower continues to track along the boundary line.
[0079] In one embodiment of this application, due to the smoothing and indentation processing at the boundary corners, areas not covered by the boundary may exist at the corners of the working area. Therefore, the lawnmower needs to perform boundary corner processing when it reaches a corner to eliminate abnormalities. Specifically, within a preset range before the lawnmower reaches the corner, the lawnmower enters the corner state and identifies and detects the image in the camera in real time. When the lawn and boundary line are not detected in the currently captured image, the lawnmower continues to travel a preset distance according to the travel direction corresponding to the frame image before entering the corner state. After traveling the preset distance, the slope of the line segment after the corner is calculated based on the frame image before entering the corner state, and the lawnmower rotates in place according to the slope of the line segment after the corner until the boundary line after the corner is detected. After updating the target boundary point according to the boundary line after the corner, the lawnmower travels to the target boundary point and continues boundary tracking.
[0080] In another embodiment, the lawnmower performs closed-loop detection during boundary tracking. When the lawnmower detects that it has traveled to the target boundary point again during its journey, it is considered that it has completed one closed-loop tracking along the tracking boundary, stops boundary tracking, and completes the boundary tracking task.
[0081] In an embodiment of the present invention, during the process of tracking the boundary of the work area before mapping, after extracting the initial boundary points of the work area boundary, the boundary points are optimized and adjusted to facilitate tracking by the mobile robot. The optimized boundary points are then used as the actual boundary points for tracking by the mobile robot. This allows the mobile robot to continuously identify, approach, and accurately track effective trackable boundary segments using only the camera, thereby achieving tracking of the work area boundary. Simultaneously, the boundary points are extracted and adjusted to generate the tracking boundary, and the robot travels to the boundary point closest to its current position for tracking. This allows the mobile robot to select the closest adjusted boundary point as the target point for tracking from any position, eliminating the need to travel to a designated location for grass boundary tracking, thus improving the efficiency of the mobile robot's boundary tracking.
[0082] The steps described above are for clarity only. In practice, they can be combined into one step or some steps can be broken down into multiple steps. As long as they include the same logical relationship, they are all within the scope of protection of this patent. Adding insignificant modifications or introducing insignificant designs to the algorithm or process, but without changing the core design of the algorithm and process, are also within the scope of protection of this patent.
[0083] Furthermore, the examples mentioned in the above embodiments can be freely combined, and any combination can be understood as an embodiment. The terms "embodiment" or "example" appearing in various locations in the specification do not necessarily refer to the same embodiment, nor are they independent or alternative embodiments mutually exclusive with other embodiments. Those skilled in the art will understand that the embodiments described herein can be combined with other embodiments.
[0084] In summary, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired result.
[0085] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly specifying the number, specific order, or primary and secondary relationship of the indicated technical features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly defined.
[0086] In the description of the embodiments of this application, the technical terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing the embodiments of this application and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the embodiments of this application.
[0087] Another embodiment of the present invention relates to a control system for a mobile robot, such as... Figure 4 As shown, it includes:
[0088] The system includes a boundary point extraction module for extracting initial boundary points representing the working area boundary from the image captured by the mobile robot; a boundary point adjustment module for adjusting the initial boundary points to obtain adjusted boundary points, which are the actual automatic online tracking boundary points of the mobile robot; a boundary line generation module for connecting the adjusted boundary points to obtain the tracking boundary; and a motion tracking module for controlling the mobile robot to move to the adjusted boundary point closest to its current position and tracking the tracking boundary.
[0089] In this embodiment of the invention, during the process of tracking the boundary of the work area before mapping, after extracting the initial boundary points of the work area boundary, the boundary points are optimized and adjusted to facilitate tracking by the mobile robot. The optimized boundary points are then used as the actual boundary points for tracking by the mobile robot. This allows the mobile robot to continuously identify, approach, and accurately track effective trackable boundary segments using only the camera, thereby achieving tracking of the work area boundary. Simultaneously, the boundary points are extracted and adjusted to generate the tracking boundary. The robot then travels to the boundary point closest to its current position for tracking. This allows the mobile robot to select the adjusted boundary point closest to its current position as the target point for tracking from any location, eliminating the need to travel to a designated location for tracking the lawn boundary, thus improving the efficiency of the mobile robot's boundary tracking.
[0090] It is not difficult to see that this embodiment is a device embodiment corresponding to the above method embodiments, and this embodiment can be implemented in conjunction with the above method embodiments. The relevant technical details mentioned in the above method embodiments are still valid in this embodiment, and will not be repeated here to reduce repetition. Accordingly, the relevant technical details mentioned in this embodiment can also be applied to the above method embodiments.
[0091] It is worth mentioning that all modules involved in this embodiment are logical modules. In practical applications, a logical unit can be a physical unit, a part of a physical unit, or a combination of multiple physical units. Furthermore, to highlight the innovative aspects of this invention, this embodiment does not introduce units that are not closely related to solving the technical problem proposed by this invention; however, this does not mean that other units are absent from this embodiment.
[0092] Another embodiment of the present invention relates to a lawnmower device, such as... Figure 5 As shown, it includes at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the control method of the mobile robot as described above.
[0093] The memory and processor are connected via a bus, which can include any number of interconnecting buses and bridges, connecting various circuits of one or more processors and memories. The bus can also connect various other circuits, such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and will not be described further herein. The bus interface provides an interface between the bus and the transceiver. The transceiver can be a single element or multiple elements, such as multiple receivers and transmitters, providing a unit for communicating with various other devices over a transmission medium. Data processed by the processor is transmitted over the wireless medium via an antenna, which further receives data and transmits it to the processor.
[0094] The processor manages the bus and general processing, and also provides various functions, including timing, peripheral interfaces, voltage regulation, power management, and other control functions. Memory is used to store data used by the processor during operation.
[0095] Another embodiment of the present invention relates to a computer-readable storage medium storing a computer program. When executed by a processor, the computer program implements the above-described embodiment of the mobile robot control method.
[0096] That is, those skilled in the art will understand that all or part of the steps in the methods of the above embodiments can be implemented by a program instructing related hardware. This program is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0097] Those skilled in the art will understand that the above embodiments are specific embodiments for implementing the present invention, and in practical applications, various changes in form and detail may be made without departing from the spirit and scope of the present invention.
Claims
1. A control method of a mobile robot characterized by, include: Extract the initial boundary points representing the working area boundary from the image captured by the mobile robot; The initial boundary points are adjusted to obtain the adjusted boundary points, which are the actual automatic online tracking boundary points of the mobile robot. The tracking boundary is obtained by connecting the adjusted boundary points; The mobile robot is moved to the adjusted boundary point closest to its current position and the tracking boundary is tracked.
2. The control method of a mobile robot according to claim 1, characterized by, The process of adjusting the initial boundary points to obtain the adjusted boundary points includes: The clustered boundary points in the initial boundary points are filtered out, and continuous boundary points are extracted. Obtain the current position of the mobile robot, and select the boundary tracking starting point that is closest to the current position from the continuous boundary points based on the current position; The continuous boundary points are smoothed based on the boundary tracking starting point.
3. The control method of the mobile robot according to claim 2, characterized by, Before extracting continuous boundary points, the method further includes: The image captured by the mobile robot is acquired in real time, and the relative position of the working area in the image and the boundary in the image is obtained. Obtain a preset tracking direction, and determine whether boundary point flipping processing is needed based on the relative position and the preset tracking direction; When the boundary point flipping process is required, the current position of the mobile robot is obtained, and the filtered boundary points are flipped.
4. The control method of a mobile robot according to claim 2, wherein After smoothing the continuous boundary points based on the boundary tracking starting point, the method further includes: The smoothed boundary points are then indented, and this indentation process includes: The system acquires images captured by the mobile robot in real time, performs recognition and detection on the images, and obtains a preset indentation distance for indentation processing. A smooth polyline segment is obtained based on the boundary points after smoothing. The vector of the smooth polyline segment is obtained and the vector of the smooth polyline segment is indented by the preset indentation distance.
5. The control method of a mobile robot according to claim 1, wherein The movement control involves moving the mobile robot to the adjusted boundary point closest to its current position and tracking the boundary, including: Obtain the current position of the mobile robot, and select the adjusted boundary point that is closest to the current position as the target boundary point; The attitude deviation and position deviation of the mobile robot are calculated based on the target boundary point and the preset tracking direction; The movement control speed is adjusted according to the preset speed, and the angular velocity of the movement control is adjusted according to the attitude deviation and the position deviation; The mobile robot is controlled to move to the target boundary point according to the speed and angular velocity of the movement control.
6. The control method of the mobile robot according to claim 5, wherein The tracking of the tracking boundary includes: Based on the location of the lawn, determine whether the current tracking direction of the mobile robot is consistent with the preset tracking direction; If the current tracking direction is consistent with the preset tracking direction, then tracking is performed along the tracking boundary according to the current tracking direction; If the current tracking direction is inconsistent with the preset tracking direction, the mobile robot is controlled to rotate 180° in place and then track along the tracking boundary line.
7. The control method of the mobile robot according to claim 1, wherein The tracking of the tracking boundary includes: When the tracking boundary has a corner, the current position of the mobile robot is obtained. When the current position is close to the corner, the working state of the mobile robot is changed to the corner state. In the corner state, the image captured by the mobile robot is acquired in real time, and it is detected whether the image contains the working area and the corner; If the working area and the corner are not detected in the image, the mobile robot continues to move a preset distance while maintaining the motion control parameters corresponding to the previous frame image. Then, the mobile robot is controlled to rotate in place and the image captured by the mobile robot is acquired in real time until the boundary of the working area is detected in the image.
8. The control method of the mobile robot according to claim 1, wherein Before extracting the initial boundary points representing the work area boundary from the image captured by the mobile robot, the method further includes: Real-time detection of whether the image captured by the mobile robot simultaneously contains the working area and the boundary of the working area; If no working area or working area boundary is detected in the image, the mobile robot is controlled to rotate in place by a preset angle in a preset rotation direction. During the rotation, the image is monitored in real time to see if both the working area and working area boundary are present. If the rotation changes from negative to positive, the rotation stops. If, after the rotation is completed, no working area or working area boundary is detected in the image, a shutdown alarm is triggered. If only the working area is detected in the image and no working area boundary is detected, the mobile robot is controlled to move in a straight line until the image contains both the working area and the working area boundary.
9. A control system of a mobile robot characterized by comprising: include: The boundary point extraction module is used to extract the initial boundary points representing the boundaries of the working area in the image captured by the mobile robot; The boundary point adjustment module is used to adjust the initial boundary point to obtain the adjusted boundary point, which is the boundary point that the mobile robot actually automatically tracks online. A boundary line generation module is used to connect the adjusted boundary points to obtain the tracking boundary; The mobile tracking module is used to control the mobile robot to travel to the adjusted boundary point closest to its current position and to track the tracking boundary.
10. A mobile robotic device, characterized by include: At least one processor; as well as, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the control method for the mobile robot as described in any one of claims 1 to 8.