Robot edge motion method, device, robot and storage medium

By acquiring the coordinate information of the target boundary points of the sweeping robot in multiple directions in real time, determining the boundary shape and adjusting the wheel speed, the problem of cleaning along the edges of irregularly shaped restricted areas or virtual walls is solved, improving the cleaning effect and user experience.

CN115145276BActive Publication Date: 2025-09-16SHENZHEN UMOUSE TECH DEV
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202210765469.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-29
Publication Date
2025-09-16
Estimated Expiration
2042-06-29

AI Technical Summary

Technical Problem

Existing sweeping robots cannot meet the requirements of moving along the edges of irregularly shaped restricted areas or virtual walls, resulting in poor edge cleaning effects.

Method used

By acquiring the coordinate information of the robot's target boundary points in multiple directions in real time, the boundary shape information of the restricted area or virtual wall is determined, and the corresponding edge motion scheme is determined based on the boundary shape information, including a straight line edge motion scheme and an inflection point edge motion scheme. The wheel speed of the robot is adjusted by using PID control to output the wheel speed adjustment parameters.

Benefits of technology

The robot can effectively move along restricted areas or virtual wall boundaries of different shapes, improving cleaning effects and enhancing user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115145276B_ABST
    Figure CN115145276B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, device, robot and storage medium for robot movement along the edge, belonging to the field of robot technology. The present invention obtains the coordinate information of the target boundary points of the robot in multiple directions in real time when a restricted area or virtual wall is detected within a distance range based on the robot; determines the boundary shape information of the restricted area or virtual wall according to the coordinate information; determines a corresponding motion along the edge scheme based on the boundary shape information; and executes the motion along the edge scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the motion along the edge scheme to move along the boundary of the restricted area or virtual wall. This solves the problem that the existing technology cannot meet the motion along the edge of irregularly shaped restricted areas or virtual walls, and has poor cleaning effect along the edge, thereby improving the cleaning effect and enhancing the user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robotics technology, and in particular to a robot edge motion method, device, robot and storage medium. Background Art

[0002] A robot vacuum, also known as a sweeping machine, is a smart home appliance that automatically vacuums the floor. It's called a robot because it can detect factors like room size, furniture placement, and floor cleanliness, and uses built-in programming to develop a reasonable cleaning route. This gives it a certain level of intelligence.

[0003] Currently, sweeping robots have many cleaning modes, such as linear, edge cleaning, spiral, cross cleaning, key cleaning, etc. During edge cleaning, sweeping robots usually need to clean along restricted areas or virtual walls set by users.

[0004] However, in the existing technology, sweeping robots can usually only clean along square or linear restricted areas or virtual walls, and cannot meet the requirements of moving along the edges of irregularly shaped restricted areas or virtual walls, resulting in poor cleaning effects along the edges. Summary of the Invention

[0005] The main purpose of the present invention is to provide a robot edge movement method, equipment, robot and storage medium, aiming to solve the problem that the existing technology cannot meet the edge movement requirements of irregularly shaped restricted areas or virtual walls, and has poor edge cleaning effect.

[0006] To achieve the above object, the present invention provides a method for robot motion along an edge, the method comprising the following steps:

[0007] When a restricted area or a virtual wall is detected within a distance range based on the robot, coordinate information of the target boundary points of the robot in multiple directions is obtained in real time;

[0008] Determining boundary shape information of the restricted area or virtual wall according to the coordinate information;

[0009] Determining a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme, and the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold;

[0010] The edge motion scheme is executed to adjust the wheel speed of the robot according to the wheel speed adjustment parameter corresponding to the edge motion scheme so that the robot moves along the boundary of the restricted area or the virtual wall.

[0011] Optionally, the boundary shape information includes boundary inflection points, straight boundaries, and non-straight boundaries. The step of determining the boundary shape information of the restricted area or virtual wall based on the coordinate information includes:

[0012] Determine whether there are overlapping coordinate points in the coordinate information;

[0013] If it exists, determining the boundary shape information as the boundary inflection point;

[0014] If not, it is further determined whether the boundary shape information is the straight line boundary or the non-straight line boundary.

[0015] Optionally, the step of determining whether the boundary shape information is the straight boundary or the non-straight boundary includes:

[0016] determining whether the plurality of coordinate points in the coordinate information form a straight line;

[0017] If the plurality of coordinate points form a straight line, determining the boundary shape information as the straight line boundary;

[0018] If the plurality of coordinate points do not form a straight line, the boundary shape information is determined to be the non-straight boundary.

[0019] Optionally, the step of determining whether the multiple coordinate points in the coordinate information form a straight line includes:

[0020] Obtaining slope information of a straight line formed by two adjacent coordinate points among the plurality of coordinate points;

[0021] Obtaining slope difference information of adjacent straight lines in the slope information, and determining whether the slope difference information is greater than a preset threshold;

[0022] If the slope difference information is greater than the preset threshold, determining that the multiple coordinate points in the coordinate information do not form a straight line;

[0023] If the slope difference information is less than or equal to the preset threshold, it is determined that the multiple coordinate points in the coordinate information form a straight line.

[0024] Optionally, the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme, and the step of determining the corresponding edge motion scheme based on the boundary shape information includes:

[0025] If the boundary shape information is the boundary inflection point or the non-linear boundary, determining the corresponding edge-along motion scheme to be the inflection point edge-along motion scheme;

[0026] If the boundary shape information is the straight boundary, the corresponding edge motion scheme is determined to be the straight edge motion scheme.

[0027] Optionally, after the step of determining that the corresponding edgewise motion scheme is the inflection point edgewise motion scheme, the method further includes:

[0028] Acquiring first coordinate information and forward direction information of the robot;

[0029] Acquire second coordinate information of a restricted area or a virtual wall boundary point closest to the robot according to the forward direction information;

[0030] Acquire first distance information between the robot and the restricted area or the virtual wall according to the first coordinate information and the second coordinate information;

[0031] The wheel speed adjustment parameter corresponding to the turning point along-edge motion scheme is determined according to the first distance information and the preset along-edge distance threshold.

[0032] Optionally, the step of determining the wheel speed adjustment parameter corresponding to the turning point edgewise motion scheme according to the first distance information and the preset edgewise distance threshold includes:

[0033] Obtaining a first adjustment ratio parameter according to a difference between the preset edge distance threshold and the first distance information;

[0034] A first fine-tuning parameter is determined based on the first adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the inflection point edgewise motion scheme is determined according to the first fine-tuning parameter and the first adjustment ratio parameter.

[0035] Optionally, after the step of determining that the corresponding edgewise motion scheme is the linear edgewise motion scheme, the method further includes:

[0036] Constructing a coordinate system based on a map of the environment in which the robot is located, and obtaining a first angle between a forward direction of the robot and a coordinate axis in the coordinate system;

[0037] Obtaining a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system;

[0038] The wheel speed adjustment parameter corresponding to the linear edgewise motion scheme is determined according to the first angle and the second angle.

[0039] Optionally, the step of obtaining the wheel speed adjustment parameter corresponding to the linear edgewise motion scheme according to the first angle and the second angle includes:

[0040] Obtaining an angle difference between the second angle and the first angle, and obtaining a second adjustment ratio parameter according to the angle difference;

[0041] A second fine-tuning parameter is determined based on the second adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the straight-line edgewise motion scheme is determined according to the second fine-tuning parameter and the second adjustment ratio parameter.

[0042] Optionally, the step of executing the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme so as to move along the boundary of the restricted area or virtual wall includes:

[0043] Obtaining wheel speed adjustment parameters corresponding to the edgewise motion scheme, and determining a first driving wheel speed and a second driving wheel speed of the robot according to the wheel speed adjustment parameters;

[0044] The first driving wheel speed and the second driving wheel speed are sent to the wheel drive of the robot to adjust the wheel speed of the robot, and the robot moves along the boundary of the restricted area or virtual wall according to the adjusted wheel speed.

[0045] Optionally, before the step of detecting the presence of a restricted area or a virtual wall within the distance range based on the robot, the method further includes:

[0046] Acquiring third coordinate information of the robot and fourth coordinate information of the restricted area or virtual wall;

[0047] acquiring second distance information between the robot and the restricted area or the virtual wall according to the third coordinate information and the fourth coordinate information;

[0048] It is determined according to the second distance information whether the restricted area or the virtual wall exists within the distance range based on the robot.

[0049] In addition, the present invention also provides a robot, comprising:

[0050] A detection module is configured to obtain coordinate information of target boundary points of the robot in multiple directions in real time when a restricted area or a virtual wall is detected within a distance range based on the robot;

[0051] a boundary determination module, configured to determine boundary shape information of the restricted area or virtual wall based on the coordinate information;

[0052] a scheme determination module, configured to determine a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight-line edge motion scheme and an inflection point edge motion scheme, wherein the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold;

[0053] The edge motion module is used to execute the edge motion plan to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion plan so that the robot moves along the boundary of the restricted area or the virtual wall.

[0054] The steps implemented by the various functional modules of the robot of the present invention during operation can refer to the steps of the robot edge motion method of the present invention, and will not be repeated here.

[0055] In addition, the present invention also provides a robot edge motion device, which includes: a memory, a processor, and a robot edge motion program stored in the memory and runnable on the processor, wherein the robot edge motion program is configured to implement the steps of the robot edge motion as described above.

[0056] In addition, the present invention also provides a computer-readable storage medium, on which a robot edge motion program is stored. When the robot edge motion program is executed by a processor, the steps of the robot edge motion method as described above are implemented.

[0057] The present invention obtains coordinate information of target boundary points of the robot in multiple directions in real time when a restricted area or virtual wall is detected within a distance range based on the robot; determines boundary shape information of the restricted area or virtual wall based on the coordinate information; determines a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme, and the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold; executes the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme to move along the boundary of the restricted area or virtual wall.

[0058] When the present invention detects the presence of a restricted area or virtual wall, it determines the boundary shape information of the restricted area or virtual wall based on the coordinate information of target boundary points in multiple directions, and determines a corresponding edge motion scheme based on the boundary shape information. Therefore, different edge motion schemes can be executed according to the boundary shape information of the restricted area or virtual wall, and the robot's wheel speed can be dynamically adjusted in real time according to the corresponding wheel speed adjustment parameters to control the robot's movement along the boundaries of restricted areas or virtual walls of different shapes. This solves the problem that the existing technology cannot meet the needs of cleaning the edges of irregularly shaped restricted areas or virtual walls, and has poor edge cleaning effects, thereby improving the cleaning effect and enhancing the user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1Schematic diagram of the structure of a robot edge motion device in a hardware operating environment according to an embodiment of the present invention;

[0060] Figure 2 A schematic flow chart of an embodiment of a method for edge motion of a robot according to the present invention;

[0061] Figure 3 A schematic diagram of a specific flow chart of an embodiment of a method for edge motion of a robot according to the present invention;

[0062] Figure 4 The figure is a schematic diagram of the structural relationship of the functional modules of a robot according to the present invention.

[0063] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION

[0064] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0065] In order to have a clearer understanding of the technical features, purposes and effects of the invention, the specific embodiments of the invention are now described with reference to the accompanying drawings.

[0066] Reference Figure 1 , Figure 1 The schematic diagram of the structure of the robot motion device along the edge of the hardware operating environment involved in the embodiment of the present invention is shown in FIG. The robot motion device along the edge of the present invention can be an intelligent robot or a sweeper.

[0067] like Figure 1 As shown, the robot edge motion device may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to implement communication between these components. The user interface 1003 may include a display screen and an input unit such as a keyboard. Optionally, the user interface 1003 may also include a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a wireless fidelity (WI-FI) interface). The memory 1005 may be a high-speed random access memory (RAM) memory or a stable non-volatile memory (NVM), such as a disk storage. The memory 1005 may also be a storage device independent of the aforementioned processor 1001.

[0068] Those skilled in the art will understand that Figure 1 The structure shown in the figure does not constitute a limitation on the edge-moving device of the robot, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0069] like Figure 1 As shown, the memory 1005 as a storage medium may include an operating system, a data storage module, a network communication module, a user interface module and a robot edge motion program.

[0070] exist Figure 1 In the illustrated robot edge motion device, the network interface 1004 is primarily used for data communication with other devices; the user interface 1003 is primarily used for data interaction with the user; the processor 1001 and the memory 1005 in the robot edge motion device of the present invention can be provided in the robot edge motion device. The robot edge motion device calls the robot edge motion program stored in the memory 1005 via the processor 1001 and performs the following operations:

[0071] When a restricted area or a virtual wall is detected within a distance range based on the robot, coordinate information of the target boundary points of the robot in multiple directions is obtained in real time;

[0072] Determining boundary shape information of the restricted area or virtual wall according to the coordinate information;

[0073] Determining a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme, and the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold;

[0074] The edge motion scheme is executed to adjust the wheel speed of the robot according to the wheel speed adjustment parameter corresponding to the edge motion scheme so that the robot moves along the boundary of the restricted area or the virtual wall.

[0075] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0076] Determine whether there are overlapping coordinate points in the coordinate information;

[0077] If it exists, determining the boundary shape information as the boundary inflection point;

[0078] If not, it is further determined whether the boundary shape information is the straight line boundary or the non-straight line boundary.

[0079] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0080] determining whether the plurality of coordinate points in the coordinate information form a straight line;

[0081] If the plurality of coordinate points form a straight line, determining the boundary shape information as the straight line boundary;

[0082] If the plurality of coordinate points do not form a straight line, the boundary shape information is determined to be the non-straight boundary.

[0083] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0084] Obtaining slope information of a straight line formed by two adjacent coordinate points among the plurality of coordinate points;

[0085] Obtaining slope difference information of adjacent straight lines in the slope information, and determining whether the slope difference information is greater than a preset threshold;

[0086] If the slope difference information is greater than the preset threshold, determining that the multiple coordinate points in the coordinate information do not form a straight line;

[0087] If the slope difference information is less than or equal to the preset threshold, it is determined that the multiple coordinate points in the coordinate information form a straight line.

[0088] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0089] If the boundary shape information is the boundary inflection point or the non-linear boundary, determining the corresponding edge-along motion scheme to be the inflection point edge-along motion scheme;

[0090] If the boundary shape information is the straight boundary, the corresponding edge motion scheme is determined to be the straight edge motion scheme.

[0091] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0092] Acquiring first coordinate information and forward direction information of the robot;

[0093] Acquire second coordinate information of a restricted area or a virtual wall boundary point closest to the robot according to the forward direction information;

[0094] Acquire first distance information between the robot and the restricted area or the virtual wall according to the first coordinate information and the second coordinate information;

[0095] The wheel speed adjustment parameter corresponding to the turning point along-edge motion scheme is determined according to the first distance information and the preset along-edge distance threshold.

[0096] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0097] Obtaining a first adjustment ratio parameter according to a difference between the preset edge distance threshold and the first distance information;

[0098] A first fine-tuning parameter is determined based on the first adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the inflection point edgewise motion scheme is determined according to the first fine-tuning parameter and the first adjustment ratio parameter.

[0099] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0100] Constructing a coordinate system based on a map of the environment in which the robot is located, and obtaining a first angle between a forward direction of the robot and a coordinate axis in the coordinate system;

[0101] Obtaining a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system;

[0102] The wheel speed adjustment parameter corresponding to the linear edgewise motion scheme is determined according to the first angle and the second angle.

[0103] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0104] The second included angle and the first are obtained to determine a second fine-tuning parameter based on the second adjustment ratio parameter, and the wheel speed adjustment parameter corresponding to the straight-line edgewise motion scheme is determined according to the second fine-tuning parameter and the second adjustment ratio parameter.

[0105] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0106] Obtaining wheel speed adjustment parameters corresponding to the edgewise motion scheme, and determining a first driving wheel speed and a second driving wheel speed of the robot according to the wheel speed adjustment parameters;

[0107] The first driving wheel speed and the second driving wheel speed are sent to the wheel drive of the robot to adjust the wheel speed of the robot, and the robot moves along the boundary of the restricted area or virtual wall according to the adjusted wheel speed.

[0108] Furthermore, the processor 1001 may be configured to call the robot edge motion program stored in the memory 1005 and perform the following operations:

[0109] Acquiring third coordinate information of the robot and fourth coordinate information of the restricted area or virtual wall;

[0110] acquiring second distance information between the robot and the restricted area or the virtual wall according to the third coordinate information and the fourth coordinate information;

[0111] It is determined according to the second distance information whether the restricted area or the virtual wall exists within the distance range based on the robot.

[0112] Currently, when using robots, users can set restricted zones or virtual walls to automatically avoid areas they don't want them to enter. For example, if a user doesn't want a cleaning robot to enter a kitchen with heavy grease, they can set a corresponding restricted zone or virtual wall through an app, causing the robot to automatically avoid these areas during operation. Due to the complexity of actual application scenarios, the boundary shapes of the restricted zones or virtual walls that users want to set are often complex. However, because robots in the prior art typically only move along straight lines, users are currently limited to setting restricted zones or virtual walls with regular shapes, such as rectangles or straight lines. Irregular or non-linear restricted zones or virtual walls are not possible. However, in actual applications, irregularly shaped restricted zones or virtual walls are more likely to meet user needs. Therefore, the prior art cannot meet the requirements for movement along the edges of irregularly shaped restricted zones or virtual walls, resulting in poor edge cleaning results.

[0113] In order to solve the above technical problems, the present invention provides a method for robot movement along the edge, and the method for robot movement along the edge includes: when a restricted area or a virtual wall is detected within a distance range based on the robot, the coordinate information of the target boundary points of the robot in multiple directions is obtained in real time; based on the coordinate information, the boundary shape information of the restricted area or virtual wall is determined; based on the boundary shape information, a corresponding movement scheme along the edge is determined; and the movement scheme is executed to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the movement scheme to move along the boundary of the restricted area or virtual wall.

[0114] When a restricted area or virtual wall is detected, this method determines the boundary shape of the restricted area or virtual wall based on the coordinate information of target boundary points in multiple directions. Based on this boundary shape information, a corresponding edge motion scheme is dynamically determined. Consequently, different edge motion schemes can be executed based on the boundary shape of the restricted area or virtual wall. Furthermore, the robot's wheel speed is dynamically adjusted in real time based on the corresponding wheel speed adjustment parameters to control the robot's movement along the boundaries of restricted areas or virtual walls of different shapes. This solves the problem that existing technologies cannot meet the needs of cleaning along the edges of irregularly shaped restricted areas or virtual walls, resulting in poor edge cleaning results. This improves the cleaning effect and enhances the user experience.

[0115] The embodiment of the present invention provides a method for robot to move along the edge, referring to Figure 2 , Figure 2 The figure is a flow chart of an embodiment of a method for edge motion of a robot according to the present invention.

[0116] In this embodiment, the robot edge motion method includes:

[0117] Step S10 , when it is detected that there is a restricted area or a virtual wall within a distance range based on the robot, coordinate information of target boundary points of the robot in multiple directions is obtained in real time.

[0118] In this embodiment, the execution subject is a robot, which can be a cleaning robot, a pet robot, a transport robot, a care robot, etc. Among them, the cleaning robot includes but is not limited to a sweeping robot, a vacuuming robot, a mopping robot, or a floor washing robot.

[0119] A restricted area or virtual wall refers to an area or boundary set on the robot's current motion map that the robot cannot or does not need to reach. The presence of a restricted area or virtual wall within the robot's distance range means that the restricted area or virtual wall exists within a certain distance from the robot's center point. The distance range can be set based on actual conditions. For example, if the robot's radius is 17 cm, the distance range can be set to 20 cm. In this case, if a restricted area or virtual wall exists 20 cm from the robot's center point, it is considered to be within the robot's distance range.

[0120] When a restricted area or virtual wall is detected around the robot, the robot obtains coordinate information of target boundary points in multiple directions to further determine the boundary shape of the restricted area or virtual wall. The target boundary points in multiple directions refer to the restricted area or virtual wall boundary points closest to the robot at different angles relative to the robot's forward direction. In other words, multiple restricted area or virtual wall boundary points at different positions in the robot's forward direction are obtained to determine the boundary shape of the restricted area or virtual wall.

[0121] In order to determine the boundary shape, multiple directions usually refer to three or more different directions. Therefore, the coordinate information of the target boundary points in multiple directions usually includes more than three coordinate point information, wherein each coordinate point information is the coordinate of the boundary point corresponding to each direction.

[0122] Specifically, in order to determine the boundary shape information of the restricted area or virtual wall, the coordinate information of the target boundary points in three directions can be obtained. The specific direction angle can be freely set, and it only needs to be separated by a certain angle to avoid the situation where the restricted area or virtual wall boundary points collected are the same due to the small difference in angle direction, resulting in inaccurate boundary shape information determination. Figure 3 As shown, for example, taking the robot's forward direction as the 0° direction, the coordinate information of the restricted area or virtual wall boundary point closest to the robot in the three directions of 30°, 60°, and 90° can be obtained respectively.

[0123] It should be noted that when the robot is working, it can obtain its own position coordinate information and the position coordinate information of the restricted area or virtual wall in its built-in map of the current scene through its own laser radar. Therefore, the robot can obtain the coordinate information of the target boundary points in multiple directions based on its built-in map of the current scene.

[0124] Step S20: Determine the boundary shape information of the restricted area or virtual wall according to the coordinate information.

[0125] In this embodiment, the boundary shape information of a restricted area or virtual wall refers to the shape of the restricted area or virtual wall's boundary, which can be categorized as boundary inflection points, straight boundaries, and non-straight boundaries. A boundary inflection point is where the restricted area or virtual wall boundary disappears or bends. For example, the four vertices of a rectangular restricted area or virtual wall boundary are boundary inflection points. A non-straight boundary can be a restricted area or virtual wall boundary that is curved or arc-shaped.

[0126] Since in the aforementioned steps, the coordinate information includes at least three coordinate point information, and two points can determine a straight line, the boundary shape information of the restricted area or virtual wall can be determined by three or more coordinate points, that is, the boundary shape information of the restricted area or virtual wall can be determined based on the coordinate information.

[0127] It should be noted that in this step, only the coordinate information of three restricted area or virtual wall boundary points needs to be collected to realize the judgment of the restricted area or virtual wall boundary shape, so as to further determine the corresponding edge motion plan. Compared with the existing technology that uses point cloud data, real-time scanning of the robot's surroundings to obtain obstacle information, and generates a dynamic map for real-time path planning, the edge motion method greatly reduces the amount of calculation and improves processing efficiency.

[0128] Step S30: Determine a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme. The inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold.

[0129] In this embodiment, the edge motion scheme refers to a method or strategy for the robot to move along the boundary of a restricted area or virtual wall. Since the robot's movement is primarily achieved by controlling the speed of its left and right wheels, the edge motion scheme can also be understood as a method for dynamically adjusting the robot's wheel speed through wheel speed adjustment parameters. It can be divided into an inflection point edge motion scheme and a straight line edge motion scheme. Among them, the inflection point edge motion scheme refers to a method for adjusting the robot's wheel speed by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold, performing PID control to output wheel speed adjustment parameters.

[0130] Different edge-following motion schemes are required for restricted areas or virtual wall boundaries of varying shapes. This means adjusting the robot's wheel speed using different parameters to achieve edge-following motion for different boundary shapes. Since the shape of the restricted area or virtual wall boundary can change at any time during robot motion, the corresponding edge-following motion scheme must be determined in real time based on this boundary shape information.

[0131] Specifically, for example, the corresponding edge motion scheme is determined by obtaining the specific type information of the boundary shape information; when the boundary shape information is a boundary inflection point or a non-straight boundary, the corresponding edge motion scheme is determined to be an inflection point edge motion scheme; when the boundary shape information is a straight boundary, the corresponding edge motion scheme is determined to be a straight line edge motion scheme.

[0132] Optionally, step S30, determining a corresponding edge motion scheme based on the boundary shape information, includes:

[0133] Step S31: If the boundary shape information is the boundary inflection point or the non-linear boundary, determining the corresponding edge-along motion scheme as the inflection point edge-along motion scheme;

[0134] In this embodiment, the boundary shape information includes three different types of boundary shapes: boundary inflection points, straight boundaries, and non-straight boundaries.

[0135] If the boundary shape information is a boundary inflection point or a non-straight boundary, it means that the restricted area or virtual wall boundary shape is an inflection point or an irregular curve. At this time, if the robot moves in a straight line in one direction, it cannot move along the restricted area or virtual wall boundary. Therefore, it is necessary to continuously adjust the distance between the robot and the restricted area or virtual wall boundary so that the robot always maintains a fixed distance from the restricted area or virtual wall boundary, thereby achieving edge movement when the boundary shape is an inflection point or a non-straight line.

[0136] Therefore, the inflection point edge motion scheme involves adjusting the robot's wheel speed using the acquired wheel speed adjustment parameters during robot motion, ensuring that the robot maintains a fixed distance threshold from the restricted area or virtual wall boundary, and that its motion path approximates the shape of the restricted area or virtual wall boundary. The wheel speed adjustment parameters are obtained by performing PID control output based on the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold. The preset edge distance threshold can be set based on actual motion requirements and the robot's size information.

[0137] Specifically, for example, Figure 3 As shown in the figure, the preset edge distance threshold is set to 100 mm, and the PID edge adjustment is performed by obtaining the real-time closest distance between the robot and the restricted area or virtual wall boundary. The calculation method of the wheel speed adjustment parameter OUT at this time can be as follows:

[0138] K p =(100-distance)×30

[0139] K i =0

[0140] K d =(K p -K Lastp )×20

[0141] OUT=K p +K i +K d

[0142] K Last_p =K p

[0143] Among them, K p is the proportional control weight, K i is the integral control weight, K d is the calculus control weight, K Last_p For the last K p The values ​​20 and 30 are both empirical coefficients and can be customized.

[0144] According to the wheel speed adjustment parameter OUT, the speeds of the left and right wheels of the robot can be adjusted so that the robot moves along the boundary inflection point or non-straight boundary according to the inflection point edge motion scheme.

[0145] Step S32: If the boundary shape information is the straight boundary, determining that the corresponding edge motion scheme is the straight edge motion scheme.

[0146] In this embodiment, the boundary shape information is a straight line boundary, which means that the boundary shape of the restricted area or virtual wall at this time is a straight line. If the robot moves in a straight line in one direction at this time, it can move in line with the restricted area or virtual wall. Therefore, it is only necessary to adjust the robot's movement direction to be consistent with the direction of the restricted area or virtual wall to achieve movement along the edge.

[0147] Therefore, the linear motion scheme is a motion scheme that adjusts the wheel speed adjustment parameters obtained during the robot's motion so that the robot's motion direction is consistent with the restricted area or the boundary direction of the virtual wall. Figure 3 Specifically, for example, the PID edgewise adjustment can be performed to calculate the wheel speed adjustment parameter OUT by obtaining the angular difference between the robot's real-time forward direction and the restricted area or virtual wall boundary direction. The wheel speed adjustment parameter OUT can be calculated by determining the map direction, such as using the robot's initial movement direction as the map direction, and then obtaining the angle θ1 between the restricted area or virtual wall boundary direction and the map direction, as well as the angle θ2 between the robot's forward direction and the map direction. The wheel speed adjustment parameter OUT can then be calculated as follows:

[0148] K p =(θ2-θ1)×4

[0149] K i =0

[0150] K d =(K p -K Lastp )×2

[0151] OUT=K p +K i +K d

[0152] K Last_p =K p

[0153] Among them, the values ​​2 and 4 are empirical coefficients and can be customized.

[0154] The left and right wheel speeds of the robot can be adjusted according to the wheel speed adjustment parameter OUT, so that the robot moves along the straight line boundary according to the straight line edge motion scheme.

[0155] This embodiment determines an edge motion scheme based on the boundary shape information of the restricted area or virtual wall, so that different wheel speed adjustment parameters can be obtained through different edge motion schemes according to the shape of the restricted area or virtual wall boundary to control the wheel speed of the robot, thereby achieving the robot being able to always maintain a fixed preset edge distance threshold for edge motion regardless of the shape of the restricted area or virtual wall boundary.

[0156] Step S40 , executing the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme so as to move along the boundary of the restricted area or the virtual wall.

[0157] In this embodiment, executing the edge motion scheme involves obtaining wheel speed adjustment parameters and adjusting the robot's wheel speed based on the wheel speed adjustment parameters, allowing the robot to move along restricted areas or virtual walls of varying boundary shapes. The wheel speed adjustment parameters refer to parameters used to adjust the robot's wheel speed.

[0158] Since the edge motion scheme includes the inflection point edge motion scheme and the straight line edge motion scheme, after determining the corresponding edge motion scheme according to the boundary shape information, executing the corresponding edge motion method can obtain different wheel speed adjustment parameters to adjust the robot's wheel speed, so as to control the robot to move along restricted areas or virtual walls with different boundary shapes.

[0159] Specifically, for example, when the determined edge motion scheme is a linear edge motion scheme, the linear edge motion scheme is executed to adjust the wheel speed of the robot according to the first wheel speed adjustment parameter corresponding to the linear edge motion scheme so as to move along the boundary of the restricted area or the virtual wall;

[0160] When the determined edge motion scheme is an inflection point edge motion scheme, the inflection point edge motion scheme is executed to adjust the wheel speed of the robot according to the second wheel speed adjustment parameter corresponding to the inflection point edge motion scheme to move along the boundary of the restricted area or virtual wall.

[0161] Optionally, step S40, executing the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme so that the robot moves along the boundary of the restricted area or the virtual wall, includes:

[0162] Step S41, obtaining the wheel speed adjustment parameters corresponding to the edge motion scheme, and determining the first drive wheel speed and the second drive wheel speed of the robot according to the wheel speed adjustment parameters.

[0163] In this embodiment, the first and second drive wheel speeds are used to distinguish the speeds of different drive wheels close to and away from the restricted area or virtual wall boundary. For example, the first drive wheel speed is the drive wheel speed of the robot on the side close to the restricted area or virtual wall boundary, and the second drive wheel speed is the drive wheel speed of the robot on the side away from the restricted area or virtual wall boundary.

[0164] Since different edge motion schemes correspond to different methods of obtaining wheel speed adjustment parameters, it is necessary to obtain the corresponding wheel speed adjustment parameters according to the determined edge motion scheme, so as to determine the first and second driving wheel speeds of the robot respectively according to the wheel speed adjustment parameters.

[0165] Specifically, for example, if the robot is moving along the right side of the wall, and the robot always moves on the left side of the restricted area or the virtual wall, then the driving wheel speed of the robot at this time is calculated as follows:

[0166] LeftSpeed=SpeedMax-OUT

[0167] RightSpeed=SpeedMax+OUT

[0168] Among them, SpeedMax is the preset maximum wheel speed value of a single drive wheel, which can be customized according to the performance of the robot. For example, SpeedMax can be set to 260 mm / s; LeftSpeed ​​is the speed of the robot's left drive wheel, that is, the speed of the second drive wheel away from the restricted area or virtual wall boundary; RightSpeed ​​is the speed of the right drive wheel, that is, the speed of the first drive wheel close to the restricted area or virtual wall boundary.

[0169] Step S42: Send the first driving wheel speed and the second driving wheel speed to the wheel drive of the robot to adjust the wheel speed of the robot, and move along the boundary of the restricted area or virtual wall according to the adjusted wheel speed.

[0170] In this embodiment, after the corresponding driving wheel speed is calculated according to the wheel speed adjustment parameter, the wheel speed of the corresponding driving wheel can be adjusted according to the driving wheel speed, thereby enabling the robot to move along the boundary of the restricted area or virtual wall.

[0171] When a restricted area or virtual wall is detected, this embodiment determines the boundary shape of the restricted area or virtual wall based on the coordinate information of target boundary points in multiple directions. Based on this boundary shape information, a corresponding edge motion scheme is determined. Therefore, different edge motion schemes can be executed based on the boundary shape information of the restricted area or virtual wall. Furthermore, the robot's wheel speed is dynamically adjusted in real time based on the corresponding wheel speed adjustment parameters to control the robot's movement along the restricted area or virtual wall boundary. This solves the problem that existing technologies cannot meet the requirements for edge cleaning of irregularly shaped restricted areas or virtual walls, resulting in poor edge cleaning performance. This improves cleaning performance and enhances the user experience.

[0172] Furthermore, in another embodiment of the robot edge motion method of the present invention, step S20, determining the boundary shape information of the restricted area or virtual wall based on the coordinate information, includes:

[0173] Step S21, determining whether there are overlapping coordinate points in the coordinate information;

[0174] In this embodiment, the boundary shape information of the restricted area or the virtual wall includes a boundary inflection point, a straight boundary, or a non-straight boundary.

[0175] If there are overlapping coordinate points in the coordinate information, it means that the robot has obtained the same target boundary point in different directions, that is, the nearest restricted area or virtual wall boundary points in different directions overlap.

[0176] Step S22: if it exists, determining the boundary shape information as the boundary inflection point;

[0177] In this embodiment, if there are overlapping coordinate points, it means that the closest restricted area or virtual wall boundary point in one direction of the robot is consistent with that in the other direction. At this time, it means that the boundary of the straight-line restricted area or virtual wall in that direction disappears or the restricted area or virtual wall is not set. Therefore, it can be determined that the robot has reached the boundary inflection point at this time, that is, the boundary shape information at this time is the boundary inflection point.

[0178] Step S23: If not, further determine whether the boundary shape information is the straight line boundary or the non-straight line boundary.

[0179] In this embodiment, if there are no overlapping coordinate points, it means that the inflection point of the restricted area or virtual wall boundary has not been reached. Therefore, it is necessary to further determine whether the shape of the restricted area or virtual wall boundary is a straight line or a non-straight line, that is, whether the boundary shape information is a straight line boundary or a non-straight line boundary.

[0180] Optionally, step S23, determining whether the boundary shape information is the straight boundary or the non-straight boundary, includes:

[0181] Step S231: Determine whether the multiple coordinate points in the coordinate information form a straight line.

[0182] In this embodiment, whether the restricted area or the virtual wall boundary is a straight line can be determined by whether the multiple coordinate points in the acquired coordinate information form a straight line. Whether the multiple coordinate points form a straight line can be determined by the slope of the line formed by each of the multiple coordinate points.

[0183] Specifically, for example, assuming that multiple coordinate points are the boundary points (X1, Y1), (X2, Y2), and (X3, Y3) at the 30°, 60°, and 90° directions of the robot, then the slope K1 of the straight line formed by (X1, Y1) and (X2, Y2) and the slope K2 of the straight line formed by (X2, Y2) and (X3, Y3) are calculated to determine whether the three points form a straight line. The calculation formulas for K1 and K2 are as follows:

[0184]

[0185]

[0186] Optionally, step S231, determining whether the multiple coordinate points in the coordinate information form a straight line, includes:

[0187] Step S2311: Obtain slope information of a straight line formed by two adjacent coordinate points among the plurality of coordinate points.

[0188] In this embodiment, since two adjacent coordinate points among multiple coordinate points can usually form more than two straight lines, for example, three coordinate points can form two straight lines, and four coordinate points can form three straight lines, the slope information usually includes the slopes of more than two straight lines.

[0189] Step S2312: Obtain slope difference information of adjacent straight lines in the slope information, and determine whether the slope difference information is greater than a preset threshold.

[0190] In this embodiment, the slope difference information is obtained by subtracting the slopes of adjacent straight lines. For example, the slope information of the straight line formed by four coordinate points is k1, k2 and k3 respectively, then the slope difference information includes: two slope differences: (k2-k1) and (k3-k2).

[0191] Because there may be subtle protrusions within a boundary, even though they are not straight lines, they can be treated as straight line boundaries. Therefore, whether multiple coordinate points form a straight line can be determined by whether the slope difference is greater than a preset threshold. The preset threshold can be customized, so that when the slope difference exceeds a certain range, the multiple coordinate points are considered not to form a straight line.

[0192] Step S2313: If the slope difference information is greater than the preset threshold, it is determined that the multiple coordinate points in the coordinate information do not form a straight line.

[0193] In this embodiment, when the slope difference information is greater than a preset threshold, it is determined that the multiple coordinate points do not form a straight line, that is, the boundary shape information at this time is a non-straight boundary.

[0194] Step S2314: If the slope difference information is less than or equal to the preset threshold, it is determined that the multiple coordinate points in the coordinate information form a straight line.

[0195] In this embodiment, when the slope difference information is less than or equal to a preset threshold, it is determined that the plurality of coordinate points form a straight line, that is, the boundary shape information at this time is a straight line boundary.

[0196] Step S232: If the plurality of coordinate points form a straight line, determining the boundary shape information as the straight line boundary.

[0197] In this embodiment, if a plurality of coordinate points form a straight line, it means that the restricted area or virtual wall boundary formed by these coordinate points is a straight line, that is, the boundary shape information is a straight line boundary.

[0198] Step S233: If the plurality of coordinate points do not form a straight line, determining that the boundary shape information is the non-straight boundary.

[0199] In this embodiment, if the multiple coordinate points do not form a straight line, it means that the restricted area or virtual wall boundary formed by these coordinate points is a non-straight line, that is, the boundary shape information is a non-straight line boundary.

[0200] This embodiment obtains coordinate point information on the restricted area or virtual wall boundary, and determines the shape of the restricted area or virtual wall boundary based on whether the coordinate points overlap or form a straight line, which can be used to further determine the corresponding edge movement plan.

[0201] Furthermore, in another embodiment of the robot edge motion method of the present invention, after step S31, determining that the corresponding edge motion scheme is the inflection point edge motion scheme, the method further includes:

[0202] Step S311: Acquire the first coordinate information and forward direction information of the robot.

[0203] In this embodiment, the first coordinate information is the robot's current position in the map, which can be obtained using a lidar. The heading information is the robot's direction of motion. Specifically, for example, a coordinate system can be established in the robot's current map, with the robot's starting position as the origin. The robot's current position in the map, i.e., the first coordinate information, can be obtained using the robot's lidar.

[0204] It should be noted that, since a robot usually has a certain size, the first coordinate information refers to the position coordinates of the center point of the robot.

[0205] Step S312: Acquire second coordinate information of the restricted area or virtual wall boundary point closest to the robot according to the forward direction information.

[0206] In this embodiment, the coordinates of the restricted area or virtual wall boundary point in the direction perpendicular to the robot's forward direction can be obtained based on the robot's forward direction information, that is, the second coordinate information of the restricted area or virtual wall boundary point closest to the robot.

[0207] Step S313: Acquire first distance information between the robot and the restricted area or virtual wall according to the first coordinate information and the second coordinate information.

[0208] In this embodiment, the first distance information is the real-time minimum distance information between the robot and the restricted area or the boundary of the virtual wall, which can be calculated from the first coordinate information and the second coordinate information.

[0209] Specifically, for example, assuming that the first coordinate information obtained is (X3, Y3) and the second coordinate information is (X4, Y4), then the first distance information is the distance between (X3, Y3) and (X4, Y4). The distance between (X3, Y3) and (X4, Y4) is calculated as follows:

[0210]

[0211] Step S314 : determining the wheel speed adjustment parameter corresponding to the turning point along-edge motion scheme according to the first distance information and the preset along-edge distance threshold.

[0212] In this embodiment, the wheel speed adjustment parameters corresponding to the inflection point along-edge motion scheme are used to adjust the left and right wheel speeds of the robot, so that the robot can move along the boundary inflection point of the restricted area or virtual wall or the boundary of the non-straight restricted area or virtual wall, and always maintain a fixed distance from the boundary as the shape of the boundary changes.

[0213] To ensure the robot maintains a certain distance from the restricted area or virtual wall during edge motion, a preset edge distance threshold is required. Therefore, based on the first distance information, this edge distance threshold can be used to determine the edge motion and perform PID control to obtain the corresponding wheel speed adjustment parameters. The edge distance threshold can be set based on actual needs. For example, the edge distance threshold during edge motion can be set to 100 mm.

[0214] This embodiment obtains the coordinate information and forward direction information of the robot after determining that the edge motion scheme is the turning point edge motion scheme, so as to obtain the real-time closest distance information between the robot and the restricted area or virtual wall, and then determines the wheel speed adjustment parameters of the turning point edge motion scheme based on the closest distance information.

[0215] Optionally, step S314, determining a wheel speed adjustment parameter corresponding to the turning point edgewise motion scheme according to the first distance information and the preset edgewise distance threshold, includes:

[0216] Step S3141: Obtain a first adjustment ratio parameter according to a difference between the preset edge distance threshold and the first distance information.

[0217] In this embodiment, the preset edge distance threshold is the distance that the robot needs to maintain from the boundary of the restricted area or virtual wall during the edge movement, and can be customized according to actual needs.

[0218] The first adjustment ratio parameter is used to adjust the real-time distance between the robot and the restricted area or virtual wall boundary so that the real-time distance is consistent with the preset distance threshold. This parameter can be obtained by multiplying the difference between the preset distance threshold and the first distance information (i.e., the real-time distance error) by a certain empirical coefficient. The empirical coefficient can be customized based on actual conditions.

[0219] Step S3142: determining a first fine-tuning parameter based on the first adjustment ratio parameter, and determining a wheel speed adjustment parameter corresponding to the inflection point edgewise motion scheme according to the first fine-tuning parameter and the first adjustment ratio parameter.

[0220] In this embodiment, the first fine-tuning parameter is used to reduce oscillations caused by the first adjustment ratio parameter during speed adjustment. This can be obtained by obtaining the change in the first adjustment ratio parameter, i.e., subtracting the first adjustment ratio parameter from the previous speed adjustment from the first adjustment ratio parameter during the current speed adjustment, and then multiplying the result by a certain empirical coefficient. The empirical coefficient can be customized based on actual conditions.

[0221] The wheel speed adjustment parameter corresponding to the inflection point along-edge motion scheme can be obtained by adding the first adjustment ratio parameter and the first fine-tuning parameter. Specifically, for example, assuming that the wheel speed adjustment parameter is out, the preset along-edge distance threshold is PresetD, and the first distance information is distance, the wheel speed adjustment parameter OUT is calculated as follows:

[0222] K p1 =(PresetD-distance)×coefficient1

[0223] K i1 =K i1 +Kp1 ×coefficient2

[0224] K d1 =(K p1 -K Lastp )×coefficient3

[0225] OUT=K p1 +K i1 +K d1

[0226] K Last_p1 =K p1

[0227] Among them, K p1 is the proportional control weight, i.e. the first adjustment proportional parameter; K i1 For integral control weight, when it is not needed, its empirical coefficient coefficient2 can be set to 0; K d1 is the calculus control weight, i.e. the first fine-tuning parameter; K Last_p1 For the last K p1 ;

[0228] Coefficient1, coefficient2, and coefficient3 are empirical coefficients. Their values ​​are related to the robot's maximum speed and distance input. Based on the typical speed and size of household sweepers, the value range of coefficient1 is 10-50, and the value range of coefficient3 is 10-30. The preset edge distance threshold PresetD can be customized. For example, it can be set to 100 mm.

[0229] The method provided in this embodiment can adopt PD control, in which case coefficient2 is set to 0, that is, K i1 is 0.

[0230] It should be noted that in order to prevent the problem of excessive output leading to excessive sideways steering, a threshold value can be set for the wheel speed adjustment parameter according to the initial movement speed of the robot. When the obtained wheel speed adjustment parameter exceeds the threshold value, it is assigned to the threshold value. Specifically, for example, Figure 3 As shown, the threshold of the wheel speed adjustment parameter OUT is set to 260. When OUT is greater than or equal to 260, it is uniformly assigned a value of 260.

[0231] This embodiment obtains the real-time closest distance between the robot and a restricted area or virtual wall boundary, and uses this closest distance information to derive corresponding adjustment ratio parameters and fine-tuning parameters, thereby deriving wheel speed adjustment parameters corresponding to the inflection point along the edge solution. Using these wheel speed adjustment parameters, the robot's wheel speed can be adjusted, enabling the robot to move along irregularly shaped restricted areas or virtual wall boundaries.

[0232] Furthermore, in another embodiment of the robot edgewise motion method of the present invention, in step S32, after determining that the corresponding edgewise motion scheme is the linear edgewise motion scheme, the method further includes:

[0233] Step S321: construct a coordinate system based on the environment map in which the robot is located, and obtain a first angle between the forward direction of the robot and a coordinate axis in the coordinate system.

[0234] In this embodiment, the coordinate system is used to determine the deviation between the robot's real-time motion direction and the direction of the line boundary when moving along the line. The coordinate system can be constructed based on a map of the robot's environment. When constructing the coordinate system, the origin of the coordinate system can be customized. For example, the robot's initial position can be used as the origin, and the robot's initial motion direction can be used as the positive direction of the Y-axis to construct the coordinate system. Alternatively, the map direction and origin position can be customized to construct the coordinate system.

[0235] The first angle is the angle between the straight line in the robot's forward direction and the coordinate axis in the coordinate system, where the coordinate axis can be the X-axis or the Y-axis, and can also be understood as the map direction.

[0236] Step S322: Obtain a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system.

[0237] In this embodiment, since the edgewise motion boundary is a straight line boundary, the second angle between the straight line boundary and the coordinate axis can be obtained based on the direction of the straight line boundary. It is understood that the coordinate axis at this time needs to be consistent with the coordinate axis selected when determining the first angle.

[0238] Specifically, for example, with the map direction as the positive Y-axis direction of the coordinate system, by obtaining the coordinates of two points on the straight boundary of the restricted area or virtual wall in the coordinate system, the slope K1 of the straight boundary is calculated. Then, the angle θ2 between the restricted area or virtual wall boundary and the map direction can be calculated specifically as follows:

[0239] θ2=arctan(K1).

[0240] Step S323: determining the wheel speed adjustment parameters corresponding to the linear edgewise motion scheme according to the first angle and the second angle.

[0241] In this embodiment, the wheel speed adjustment parameters corresponding to the straight-line edge motion scheme are used to adjust the left and right wheel speeds of the robot so that the robot can move along the straight-line boundary of the restricted area or virtual wall, and the robot's movement direction is consistent with or parallel to the straight-line boundary direction.

[0242] To ensure the robot's direction of motion remains aligned or parallel to the boundary of the restricted area or virtual wall during edge movement, the robot's direction of motion must be adjusted in real time. Therefore, a second angle relative to the restricted area or virtual wall boundary can be locked based on the first angle of the robot's forward direction, and PID control can be performed to obtain the corresponding wheel speed adjustment parameters.

[0243] Specifically, for example, the map direction can be determined in the map and the map direction can be used as the coordinate axis of the coordinate system to obtain the angle θ between the robot's forward direction and the map direction. 1, The first angle is θ2, which is the angle between the restricted area or virtual wall boundary and the map direction, which is the second angle. The map direction can be determined by yourself, for example, by setting the robot's initial movement direction to the map direction.

[0244] In this embodiment, after determining that the edge motion scheme is a straight edge motion scheme, a coordinate system is established based on the environment map, and the angle between the robot's forward direction and the coordinate axis and the angle between the straight boundary direction and the coordinate axis are obtained respectively. Then, the wheel speed adjustment parameters corresponding to the straight edge motion scheme can be determined based on the two angles.

[0245] Optionally, step S323, determining the wheel speed adjustment parameter corresponding to the linear edgewise motion scheme according to the first angle and the second angle, includes:

[0246] Step S3231: Obtain an angle difference between the first angle and the second angle, and obtain a second adjustment ratio parameter according to the angle difference.

[0247] In this embodiment, the angle difference is used to represent the deviation between the robot's forward direction and the restricted area boundary direction, and can be obtained by subtracting the angle value of the first angle from the angle value of the second angle.

[0248] The second adjustment ratio parameter is used to adjust the robot's forward direction so that it aligns with or is parallel to the boundary of the restricted area or virtual wall, allowing the robot to move along the edge while avoiding contact with the restricted area or virtual wall. The second adjustment ratio parameter can be calculated by multiplying the angle difference by a certain empirical coefficient. This empirical coefficient can be customized based on actual conditions.

[0249] Step S3232: determining a second fine-tuning parameter based on the second adjustment ratio parameter, and determining a wheel speed adjustment parameter corresponding to the straight-line edgewise motion scheme according to the second fine-tuning parameter and the second adjustment ratio parameter.

[0250] In this embodiment, the second fine-tuning parameter is used to reduce oscillations caused by the second adjustment ratio parameter during speed adjustment. This can be obtained by obtaining the change in the second adjustment ratio parameter, i.e., subtracting the second adjustment ratio parameter from the previous speed adjustment from the second adjustment ratio parameter during the current speed adjustment, and then multiplying the result by a certain empirical coefficient. The empirical coefficient can be customized based on actual conditions.

[0251] The wheel speed adjustment parameter corresponding to the linear edgewise motion scheme can be obtained by adding the second adjustment ratio parameter and the second fine-tuning parameter. Specifically, for example, assuming the wheel speed adjustment parameter is out and the angle difference is θ2-θ1, then in order to achieve linear edgewise motion of the robot, the wheel speed adjustment parameter OUT is calculated as follows:

[0252] K p2 =(θ2-θ1)×coefficient4

[0253] K i2 =K i2 +K p2 ×coefficient5

[0254] K d2 =(K p2 -K Lastp )×coefficient6

[0255] OUT=K p2 +K i2 +K d2

[0256] K Last_p2 =K p2

[0257] Among them, K p2 is the proportional control weight, i.e. the second adjustment proportional parameter; K i2 For integral control weight, when it is not needed, its empirical coefficient coefficient5 can be set to 0; K d2 is the calculus control weight, i.e., the first fine-tuning parameter; θ2 is the angle between the restricted area or virtual wall boundary and the map direction, i.e., the second angle; θ1 is the angle between the robot and the map direction, i.e., the second angle; K Last_p2 For the last K p2 ;

[0258] Coefficient 4, coefficient 5, and coefficient 6 are empirical coefficients. Their values ​​are related to the robot's maximum speed, angle input value, and other factors. Based on the typical speed and size of household vacuum cleaners, the value range of coefficient 4 is 2-8, and the value range of coefficient 6 is 1-4.

[0259] The method provided in this embodiment can adopt PD control, in which case coefficient5 is set to 0, that is, K i2 is 0.

[0260] It should be noted that in order to prevent the problem of excessive output leading to excessive sideways steering, a threshold value can be set for the wheel speed adjustment parameter according to the initial movement speed of the robot. When the obtained wheel speed adjustment parameter exceeds the threshold value, it is assigned to the threshold value. Specifically, for example, Figure 3 As shown, the threshold of the wheel speed adjustment parameter OUT is set to 260. When OUT is greater than or equal to 260, it is uniformly assigned a value of 260.

[0261] This embodiment obtains the angular difference between the robot's forward direction and the boundary direction of the restricted area or virtual wall, and uses this angular difference to derive corresponding adjustment ratio parameters and fine-tuning parameters, thereby deriving wheel speed adjustment parameters for the linear edge-following solution. This angle-based PID control solution, by acquiring multiple restricted area or virtual wall boundary points at different locations along the robot's forward direction, can predict the boundary shape of the restricted area or virtual wall ahead. This reduces the impact of unstable edge-following motion caused by the radar data refresh rate.

[0262] In addition, the wheel speed adjustment parameter can be used to adjust the robot's wheel speed, so that the robot can move along the straight restricted area or the virtual wall boundary.

[0263] Furthermore, in another embodiment of the robot edge motion method of the present invention, step S10, before detecting the presence of a restricted area or a virtual wall within a distance range based on the robot, includes:

[0264] Step S01: Acquire the third coordinate information of the robot and the fourth coordinate information of the restricted area or virtual wall.

[0265] In this embodiment, the basis for the robot to achieve edge movement is that it can obtain map information of the current motion scene. Therefore, a coordinate system can be established in the map with the initial position of the robot's movement as the origin. On this basis, the coordinate point information of the robot's real-time position in the map can be obtained, that is, the third coordinate information; the coordinate point information of the position of the restricted area or virtual wall boundary preset by the user in the map can also be obtained, that is, the fourth coordinate information.

[0266] Step S02: Acquire second distance information between the robot and the restricted area or virtual wall according to the third coordinate information and the fourth coordinate information.

[0267] In this embodiment, the second distance information is the distance between the real-time position of the robot and the restricted area or the boundary of the virtual wall, which can be calculated using a distance formula between two points.

[0268] Step S03: determining whether the restricted area or the virtual wall exists within the distance range based on the robot according to the second distance information.

[0269] In this embodiment, it is determined whether there is a restricted area or a virtual wall within the distance range based on the robot, that is, it is determined whether there is a restricted area or a virtual wall within a fixed distance range around the robot, wherein the fixed distance range can be freely set, for example, set to 20 cm, then it can be determined whether there is a restricted area or a virtual wall within the distance range based on the robot based on whether the second distance information is less than or equal to 20 cm.

[0270] This embodiment constructs coordinates in the robot's current motion map, collects the robot's current position coordinates and the coordinates of the boundary points of the restricted area or virtual wall in real time, calculates the real-time distance between the robot and the restricted area or virtual wall boundary, and realizes the judgment of whether there is a restricted area or virtual wall within the distance range based on the robot.

[0271] Furthermore, an embodiment of the present invention also provides a robot, such as Figure 4 As shown, the robot of the present invention includes:

[0272] The detection module 10 is configured to obtain coordinate information of target boundary points of the robot in multiple directions in real time when a restricted area or a virtual wall is detected within a distance range based on the robot;

[0273] a boundary determination module 20, configured to determine boundary shape information of the restricted area or virtual wall based on the coordinate information;

[0274] a scheme determination module 30 for determining a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight-line edge motion scheme and an inflection point edge motion scheme. The inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold;

[0275] The edge motion module 40 is configured to execute the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme so as to move along the boundary of the restricted area or the virtual wall.

[0276] Preferably, the boundary determination module is further configured to:

[0277] Determine whether there are overlapping coordinate points in the coordinate information;

[0278] If it exists, determining the boundary shape information as the boundary inflection point;

[0279] If not, it is further determined whether the boundary shape information is the straight line boundary or the non-straight line boundary.

[0280] Preferably, the boundary determination module is further configured to:

[0281] determining whether the plurality of coordinate points in the coordinate information form a straight line;

[0282] If the plurality of coordinate points form a straight line, determining the boundary shape information as the straight line boundary;

[0283] If the plurality of coordinate points do not form a straight line, the boundary shape information is determined to be the non-straight boundary.

[0284] Preferably, the boundary determination module is further configured to:

[0285] Obtaining slope information of a straight line formed by two adjacent coordinate points among the plurality of coordinate points;

[0286] Obtaining slope difference information of adjacent straight lines in the slope information, and determining whether the slope difference information is greater than a preset threshold;

[0287] If the slope difference information is greater than the preset threshold, determining that the multiple coordinate points in the coordinate information do not form a straight line;

[0288] If the slope difference information is less than or equal to the preset threshold, it is determined that the multiple coordinate points in the coordinate information form a straight line.

[0289] Preferably, the solution determination module is further configured to:

[0290] If the boundary shape information is the boundary inflection point or the non-linear boundary, determining that the corresponding edge-along motion scheme is an inflection point edge-along motion scheme;

[0291] If the boundary shape information is the straight boundary, the corresponding edge motion scheme is determined to be a straight edge motion scheme.

[0292] Preferably, the robot further comprises:

[0293] A parameter determination module, configured to obtain first coordinate information and forward direction information of the robot;

[0294] Acquire second coordinate information of a restricted area or a virtual wall boundary point closest to the robot according to the forward direction information;

[0295] Acquire first distance information between the robot and the restricted area or the virtual wall according to the first coordinate information and the second coordinate information;

[0296] The wheel speed adjustment parameter corresponding to the turning point along-edge motion scheme is determined according to the first distance information and the preset along-edge distance threshold.

[0297] Preferably, the parameter determination module is further used for:

[0298] Obtaining a first adjustment ratio parameter according to the preset edge distance threshold and the first distance information;

[0299] A first fine-tuning parameter is determined based on the first adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the inflection point edgewise motion scheme is determined according to the first fine-tuning parameter and the first adjustment ratio parameter.

[0300] Preferably, the parameter determination module is further used for:

[0301] Constructing a coordinate system based on a map of the environment in which the robot is located, and obtaining a first angle between a forward direction of the robot and a coordinate axis in the coordinate system;

[0302] Obtaining a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system;

[0303] The wheel speed adjustment parameter corresponding to the linear edgewise motion scheme is determined according to the first angle and the second angle.

[0304] Preferably, the parameter determination module is further used for:

[0305] Obtaining an angle difference between the second angle and the first angle, and obtaining a second adjustment ratio parameter according to the angle difference;

[0306] A second fine-tuning parameter is determined based on the second adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the straight-line edgewise motion scheme is determined according to the second fine-tuning parameter and the second adjustment ratio parameter.

[0307] Preferably, the edge motion module is further used for:

[0308] Obtaining wheel speed adjustment parameters corresponding to the edgewise motion scheme, and determining a first driving wheel speed and a second driving wheel speed of the robot according to the wheel speed adjustment parameters;

[0309] The first driving wheel speed and the second driving wheel speed are sent to the wheel drive of the robot to adjust the wheel speed of the robot, and the robot moves along the boundary of the restricted area or virtual wall according to the adjusted wheel speed.

[0310] Preferably, the detection module is further used for:

[0311] Acquiring third coordinate information of the robot and fourth coordinate information of the restricted area or virtual wall;

[0312] acquiring second distance information between the robot and the restricted area or the virtual wall according to the third coordinate information and the fourth coordinate information;

[0313] It is determined according to the second distance information whether the restricted area or the virtual wall exists within the distance range based on the robot.

[0314] The steps implemented by the various functional modules of the robot of the present invention during operation can refer to the various embodiments of the robot edge motion method of the present invention, and will not be repeated here.

[0315] Furthermore, an embodiment of the present invention also provides a robot edge motion device, which includes: a memory, a processor, and a robot edge motion program stored in the memory and runnable on the processor. The robot edge motion program is configured to implement the steps of the robot edge motion method provided in the above embodiment. The specific implementation steps can refer to the above embodiment and will not be elaborated here.

[0316] Furthermore, an embodiment of the present invention also provides a computer-readable storage medium, on which a robot edge motion program is stored. When the robot edge motion program is executed by a processor, the steps of the robot edge motion method provided in the above embodiment are implemented. The specific implementation steps can refer to the above embodiment and will not be elaborated here.

[0317] The robot, robot edge motion device and computer-readable storage medium provided in the embodiments of the present invention are used to implement the robot edge motion method provided in the above embodiments, which solves the problem that the existing technology cannot meet the edge motion requirements of irregularly shaped restricted areas or virtual walls, and has poor edge cleaning effects. Compared with the existing technology, the beneficial effects of the robot, robot edge motion device and computer-readable storage medium provided in the embodiments of the present invention are the same as the beneficial effects of the robot edge motion method in the above embodiments, and will not be repeated here.

[0318] The above are only preferred embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention description and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A robot edge motion method, characterized in that: The robot edge motion method comprises the following steps: When a restricted area or a virtual wall is detected within a distance range based on the robot, coordinate information of the target boundary points of the robot in multiple directions is obtained in real time; Determine whether there are overlapping coordinate points in the coordinate information; If so, determining the boundary shape information of the restricted area or virtual wall as a boundary inflection point; If not, determining whether the boundary shape information is a straight line boundary or a non-straight line boundary; Determining a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight line edge motion scheme and an inflection point edge motion scheme, and the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold; In a case where the corresponding edgewise motion scheme is the inflection point edgewise motion scheme, a first adjustment ratio parameter is determined based on a difference between the distance between the robot and the restricted area or the virtual wall and the preset edgewise distance threshold, a first fine-tuning parameter is determined based on the first adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the inflection point edgewise motion scheme is determined based on the first fine-tuning parameter and the first adjustment ratio parameter, wherein the first fine-tuning parameter is a parameter used to reduce oscillation generated by the first adjustment ratio parameter when adjusting the speed; In a case where the corresponding edgewise motion scheme is the straight-line edgewise motion scheme, a coordinate system is constructed based on a map of the environment in which the robot is located, a first angle between the robot's forward direction and a coordinate axis in the coordinate system is obtained, a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system is obtained, and an angle difference between the second angle and the first angle is obtained, a second adjustment ratio parameter is determined based on the angle difference, a second fine-tuning parameter is determined based on the second adjustment ratio parameter, and a wheel speed adjustment parameter corresponding to the straight-line edgewise motion scheme is determined based on the second fine-tuning parameter and the second adjustment ratio parameter, wherein the second fine-tuning parameter is a parameter used to reduce oscillation generated by the second adjustment ratio parameter when adjusting the speed; The edge motion scheme is executed to adjust the wheel speed of the robot according to the wheel speed adjustment parameter corresponding to the edge motion scheme so that the robot moves along the boundary of the restricted area or the virtual wall.

2. The robot edge motion method according to claim 1, wherein: The step of determining whether the boundary shape information is the straight boundary or the non-straight boundary includes: determining whether the plurality of coordinate points in the coordinate information form a straight line; If the plurality of coordinate points form a straight line, determining the boundary shape information as the straight line boundary; If the plurality of coordinate points do not form a straight line, the boundary shape information is determined to be the non-straight boundary.

3. The robot edge motion method according to claim 2, wherein: The step of determining whether the plurality of coordinate points in the coordinate information form a straight line comprises: Obtaining slope information of a straight line formed by two adjacent coordinate points among the plurality of coordinate points; Obtaining slope difference information of adjacent straight lines in the slope information, and determining whether the slope difference information is greater than a preset threshold; If the slope difference information is greater than the preset threshold, determining that the multiple coordinate points in the coordinate information do not form a straight line; If the slope difference information is less than or equal to the preset threshold, it is determined that the multiple coordinate points in the coordinate information form a straight line.

4. The robot edge motion method according to claim 2, wherein: The step of determining a corresponding edge motion scheme based on the boundary shape information comprises: If the boundary shape information is the boundary inflection point or the non-linear boundary, determining the corresponding edge-along motion scheme to be the inflection point edge-along motion scheme; If the boundary shape information is the straight boundary, the corresponding edge motion scheme is determined to be the straight edge motion scheme.

5. The robot edge motion method according to claim 4, characterized in that: After the step of determining that the corresponding edgewise motion scheme is the inflection point edgewise motion scheme, the method further includes: Acquiring first coordinate information and forward direction information of the robot; Acquire second coordinate information of a restricted area or a virtual wall boundary point closest to the robot according to the forward direction information; Acquire first distance information between the robot and the restricted area or the virtual wall according to the first coordinate information and the second coordinate information; The wheel speed adjustment parameter corresponding to the turning point along-edge motion scheme is determined according to the first distance information and the preset along-edge distance threshold.

6. The robot edge motion method according to any one of claims 1 to 5, characterized in that: The step of executing the edge motion scheme to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion scheme so as to move along the boundary of the restricted area or the virtual wall includes: Obtaining wheel speed adjustment parameters corresponding to the edgewise motion scheme, and determining a first driving wheel speed and a second driving wheel speed of the robot according to the wheel speed adjustment parameters; The first driving wheel speed and the second driving wheel speed are sent to the wheel drive of the robot to adjust the wheel speed of the robot, and the robot moves along the boundary of the restricted area or virtual wall according to the adjusted wheel speed.

7. The robot edge motion method according to claim 1, wherein: Before the step of detecting that a restricted area or a virtual wall exists within a distance range based on the robot, the method includes: Acquiring third coordinate information of the robot and fourth coordinate information of the restricted area or virtual wall; acquiring second distance information between the robot and the restricted area or the virtual wall according to the third coordinate information and the fourth coordinate information; It is determined according to the second distance information whether the restricted area or the virtual wall exists within the distance range based on the robot.

8. A robot, characterized in that: The robot comprises: A detection module is configured to obtain coordinate information of target boundary points of the robot in multiple directions in real time when a restricted area or a virtual wall is detected within a distance range based on the robot; A boundary determination module, configured to determine whether there are any overlapping coordinate points in the coordinate information; If so, determining the boundary shape information of the restricted area or virtual wall as a boundary inflection point; If not, determining whether the boundary shape information is a straight line boundary or a non-straight line boundary; a scheme determination module, configured to determine a corresponding edge motion scheme based on the boundary shape information, wherein the edge motion scheme includes a straight-line edge motion scheme and an inflection point edge motion scheme, wherein the inflection point edge motion scheme performs PID control to output wheel speed adjustment parameters by obtaining the distance between the robot and the restricted area or virtual wall and a preset edge distance threshold; The scheme determination module is further configured to, when the corresponding edge motion scheme is the inflection point edge motion scheme, determine a first adjustment ratio parameter based on a difference between the distance between the robot and the restricted area or virtual wall and the preset edge distance threshold, determine a first fine-tuning parameter based on the first adjustment ratio parameter, and determine a wheel speed adjustment parameter corresponding to the inflection point edge motion scheme based on the first fine-tuning parameter and the first adjustment ratio parameter, wherein the first fine-tuning parameter is a parameter used to reduce oscillation generated by the first adjustment ratio parameter when adjusting the speed; The scheme determination module is further configured to, when the corresponding edgewise motion scheme is the linear edgewise motion scheme, construct a coordinate system based on a map of the environment in which the robot is located, obtain a first angle between the robot's forward direction and a coordinate axis in the coordinate system, obtain a second angle between a boundary direction of the restricted area or virtual wall and a coordinate axis in the coordinate system, and obtain an angular difference between the second angle and the first angle, determine a second adjustment ratio parameter based on the angle difference, determine a second fine-tuning parameter based on the second adjustment ratio parameter, and determine a wheel speed adjustment parameter corresponding to the linear edgewise motion scheme based on the second fine-tuning parameter and the second adjustment ratio parameter, wherein the second fine-tuning parameter is a parameter used to reduce oscillation generated by the second adjustment ratio parameter when adjusting the speed; The edge motion module is used to execute the edge motion plan to adjust the wheel speed of the robot according to the wheel speed adjustment parameters corresponding to the edge motion plan so that the robot moves along the boundary of the restricted area or the virtual wall.

9. A robot edge motion device, characterized in that: The device includes: a memory, a processor, and a robot edgewise motion program stored in the memory and executable on the processor, wherein the robot edgewise motion program is configured to implement the steps of the robot edgewise motion according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a robot edgewise motion program, which, when executed by a processor, implements the steps of the robot edgewise motion according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Robot motion control method based on map prediction

    CN106843239A

  • Method for robot to detect straight side and method for cleaning robot to screen reference wall side

    CN109085834A

  • Boundary cleaning method of robot and robot

    CN110680253A

  • Intelligent disinfection robot based on negative oxygen ions

    CN111706936A