WO2023123117A1 - 一种割草机器人避障方法和割草机器人 - Google Patents

一种割草机器人避障方法和割草机器人 Download PDF

Info

Publication number
WO2023123117A1
WO2023123117A1 PCT/CN2021/142674 CN2021142674W WO2023123117A1 WO 2023123117 A1 WO2023123117 A1 WO 2023123117A1 CN 2021142674 W CN2021142674 W CN 2021142674W WO 2023123117 A1 WO2023123117 A1 WO 2023123117A1
Authority
WO
WIPO (PCT)
Prior art keywords
obstacle
obstacle avoidance
mowing robot
point
score
Prior art date
Application number
PCT/CN2021/142674
Other languages
English (en)
French (fr)
Inventor
朱森强
Original Assignee
广东美的白色家电技术创新中心有限公司
美的集团股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 广东美的白色家电技术创新中心有限公司, 美的集团股份有限公司 filed Critical 广东美的白色家电技术创新中心有限公司
Priority to PCT/CN2021/142674 priority Critical patent/WO2023123117A1/zh
Publication of WO2023123117A1 publication Critical patent/WO2023123117A1/zh

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D34/00Mowers; Mowing apparatus of harvesters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Definitions

  • the invention relates to the technical field of mowing robots, in particular to an obstacle avoidance method for a mowing robot and a mowing robot.
  • Obstacle avoidance means that when the mobile robot senses obstacles on its planned route through sensors during walking, it updates the path in real time according to a certain algorithm, bypasses obstacles, and finally reaches the target point. Obstacle avoidance in the process of mobile robot navigation is one of the key technologies for the robot to complete the task.
  • the technical problem mainly solved by the present invention is to provide an obstacle avoidance method for a lawn mowing robot and a lawn mowing robot, which can enable the lawn mowing robot to cope with different obstacle avoidance requirements of dynamic and static obstacles, and effectively improve the obstacle avoidance efficiency.
  • a technical solution adopted by the present invention is to provide an obstacle avoidance method for a lawn mowing robot, which includes: the lawn mower robot obtains obstacle information; Determine whether the obstacle is a static obstacle or a dynamic obstacle; determine the obstacle avoidance strategy corresponding to the static obstacle or the dynamic obstacle; use the determined obstacle avoidance strategy to avoid the obstacle.
  • determining the obstacle avoidance strategy corresponding to the static obstacle or the dynamic obstacle includes: determining that the current obstacle avoidance strategy is the obstacle avoidance strategy of the dynamic obstacle in the case of determining as a dynamic obstacle; utilizing the determined obstacle avoidance strategy to perform obstacle avoidance Including: using sound and/or light to warn and drive away.
  • the obstacle avoidance strategy of the dynamic obstacle after using the obstacle avoidance strategy of the dynamic obstacle to avoid the obstacle, it includes: determining whether the obstacle is moving; in response to the obstacle not moving, determining that the obstacle is a static obstacle; and using the obstacle avoidance strategy of the static obstacle to avoid the obstacle.
  • the mowing robot obtains the obstacle information includes: the mowing robot obtains the type information of the obstacle; based on the obstacle information, determining whether the obstacle is a static obstacle or a dynamic obstacle includes: based on the obstacle type information, determining that the obstacle is Static obstacle or dynamic obstacle; Determining the obstacle avoidance strategy corresponding to the static obstacle or dynamic obstacle includes: determining that the current obstacle avoidance strategy is the obstacle avoidance strategy of the dynamic obstacle in the case of determining the dynamic obstacle, the dynamic obstacle
  • the obstacle avoidance strategy includes using warning methods to warn and drive away dynamic obstacles. Different dynamic obstacles correspond to different obstacle avoidance strategies for dynamic obstacles. In the case of static obstacles, the current obstacle avoidance strategy is determined as static obstacles.
  • the obstacle avoidance strategy for static obstacles includes using the corresponding obstacle avoidance path curve for obstacle avoidance, or using the corresponding warning method for prompting and then using the corresponding obstacle avoidance path curve for obstacle avoidance.
  • Different static obstacles correspond to Different obstacle avoidance strategies for static obstacles, wherein the warning methods include swinging in situ, and/or sound, and/or light methods; using a certain obstacle avoidance strategy to avoid obstacles includes: based on the type information of dynamic obstacles, Use the corresponding warning method to warn and drive away the dynamic obstacle; based on the type information of the static obstacle, use the corresponding obstacle avoidance path curve to avoid the obstacle, or use the corresponding warning method to prompt and use the corresponding obstacle avoidance path curve Avoidance.
  • obtaining the type information of the obstacle by the lawn mowing robot includes: the lawn mowing robot inputs the captured obstacle image into the deep learning model, and then recognizes and obtains the type information of the obstacle.
  • the mowing robot before determining the obstacle avoidance strategy corresponding to the static obstacle or the dynamic obstacle, it includes: the mowing robot generates the obstacle avoidance path of the obstacle based on its own information and the information of the obstacle; using the determined obstacle avoidance strategy to avoid the obstacle includes: Determining that the current obstacle avoidance strategy is an obstacle avoidance strategy for the static obstacle when it is determined to be a static obstacle; and performing obstacle avoidance using the determined obstacle avoidance strategy includes: performing obstacle avoidance using the obstacle avoidance strategy for the static obstacle.
  • the mowing robot generates obstacle avoidance paths based on its own information and obstacle information, including: the mowing robot based on its own position, path point and size information and the size, position, distance and type information of obstacles, Generate obstacle avoidance paths for obstacles.
  • the mowing robot generates obstacle avoidance paths based on its own position, path point and size information and obstacle size, position, distance and type information, including: based on obstacle size, position, type information and mowing
  • the size information of the robot determines the extended contour of the obstacle; in response to the distance of the obstacle being less than a preset distance, it is determined that the path point is located at an inner point inside the obstacle, and the position of the lawn mowing robot and the connection line between the inner point and the extended contour are determined Intersection point; search along the extended contour with the intersection point as the starting point, until the line between the contour point on the extended contour and the target point on the path point does not intersect with the obstacle, determine the contour point at the time of intersection; set the position of the mowing robot to The intersection point, the extended contour part from the intersection point to the contour point, and the line part from the contour point to the target point are used as new path points and obstacle avoidance paths.
  • the intersection point is used as the starting point to search along the extended contour until the line between the contour point on the extended contour and the target point on the path point does not intersect with the obstacle.
  • Determining the contour point at the time of intersection includes: The extended contour is searched to both sides until the line between the contour points on both sides of the extended contour and the target point on the path point does not intersect with the obstacle, and the contour point at the time of intersection is determined.
  • the position of the mowing robot to the intersection point, the extended contour part from the intersection point to the contour point, and the line part from the contour point to the target point are used as new path points, and as the obstacle avoidance path, it includes: the two sides of the mowing robot
  • the path point of the shorter line part in the line part is used as the new path point and as the obstacle avoidance path.
  • the line part is the extended contour part from the position of the mowing robot to the intersection point, the intersection point to the contour point, and the contour point to the contour point. Links to target points.
  • determining the extended outline of the obstacle based on the size, position, type information of the obstacle and the size information of the mowing robot includes: determining the polygonal shape of the obstacle based on the size, position, type information of the obstacle and the size information of the mowing robot
  • the extended contour of starting from the intersection point, search along the extended contour until the line between the contour point on the extended contour and the target point on the path point does not intersect with the obstacle.
  • the contour points to determine the position at this time include: taking the intersection point as The starting point is searched along the polygon vertices of the extended contour until the line connecting the vertices on the extended contour and the target point on the path point does not intersect with the obstacle, and determine the vertices at this time.
  • determining the extended outline of the obstacle based on the size, position, type information of the obstacle and the size information of the mowing robot includes: determining the actual outline of the obstacle based on the size, position, and type information of the obstacle; approximating the actual outline to a polygon
  • the actual contour of the shape is based on the actual contour of the polygonal shape and combined with the size information of the mowing robot to determine the extended contour of the polygonal shape of the obstacle.
  • the determined obstacle avoidance strategy after using the determined obstacle avoidance strategy to avoid obstacles, it includes: obtaining the obstacle avoidance score of the mowing robot, and the obstacle avoidance score includes the robot's own score and/or manual score; based on the obstacle avoidance score, the obstacle avoidance parameters of the mowing robot are adjusted. .
  • the obstacle avoidance score includes a dynamic obstacle avoidance score and a static obstacle avoidance score
  • adjusting the obstacle avoidance parameters of the mowing robot based on the obstacle avoidance score includes: responding to the dynamic obstacle avoidance score being lower than the dynamic obstacle avoidance score. Adjust the warning method corresponding to the dynamic obstacle so that the dynamic obstacle avoidance score is not lower than the dynamic obstacle avoidance preset score; in response to the static obstacle avoidance score lower than the static obstacle avoidance warning Set the score, adjust the obstacle avoidance path curve and/or warning method corresponding to the static obstacle, so that the static obstacle avoidance score is not lower than the static obstacle avoidance preset score.
  • the obstacle avoidance score includes the execution distance score, the obstacle avoidance distance score, the speed score and the angular velocity score
  • the adjustment of the obstacle avoidance parameters of the lawn mowing robot based on the obstacle avoidance score includes: in response to the execution distance score being lower than the execution distance preset score, Adjust the execution distance of the lawn mowing robot so that the execution distance score is not lower than the execution distance preset score; Not lower than the preset score of the distance around the obstacle; in response to the speed score being lower than the speed preset score, adjusting the speed of the mowing robot so that the speed score is not lower than the speed preset score; in response to the angular velocity score being lower than the angular velocity preset score, Adjust the angular velocity of the mowing robot so that the angular velocity score is not lower than the speed preset score; where, the execution distance is the distance between the mowing robot and the obstacle when the obstacle avoidance strategy needs to be executed, and the obstacle avoidance distance is the The shortest distance between the mowing robot
  • the mowing robot after the mowing robot obtains the information of the obstacle, it includes: saving the information of the obstacle; accumulating the storage time of the information of the obstacle; and deleting the information of the obstacle in response to the storage time being longer than the preset time.
  • a lawn mowing robot which includes a body; a mowing component installed on the body; an information collection component installed on the body and used to collect obstacles object information; the controller is installed on the body and is used to control the body to cooperate with the information collection component, and use the above method to avoid obstacles.
  • the beneficial effects of the present invention are: different from the situation of the prior art, the lawnmowing robot of the present invention recognizes the dynamic and static of obstacles, and selects corresponding
  • the obstacle avoidance strategy enables the mowing robot to cope with the different obstacle avoidance requirements of dynamic and static obstacles in practical applications, and effectively improves the obstacle avoidance efficiency.
  • Fig. 1 is a schematic flow chart of an embodiment of the obstacle avoidance method of the mowing robot of the present application
  • Fig. 2 is the frame diagram of deep reinforcement learning in the obstacle avoidance method of the mowing robot of the present application in an embodiment
  • Fig. 3 is a schematic flow chart of another embodiment of the obstacle avoidance method of the mowing robot of the present application.
  • Fig. 4 is a schematic flow chart of an embodiment of a method for avoiding static obstacles of the lawn mowing robot of the present application
  • Fig. 5a is a schematic diagram of an extended outline of an obstacle in the obstacle avoidance method of the mowing robot of the present application
  • Fig. 5b is a schematic diagram of the first embodiment of path planning in the obstacle avoidance method of the mowing robot of the present application
  • Fig. 5c is a schematic diagram of a second embodiment of path planning in the obstacle avoidance method of the mowing robot of the present application.
  • Fig. 5d is a schematic diagram of the third embodiment of path planning in the obstacle avoidance method of the mowing robot of the present application.
  • Fig. 6 is a schematic flow chart in another embodiment of the obstacle avoidance method for applying for a lawn mowing robot
  • Fig. 7 is a schematic flow chart of a specific embodiment of the obstacle avoidance method of the mowing robot of the present application.
  • Fig. 8 is a schematic structural diagram of the mowing robot of the present application.
  • Obstacle avoidance means that when the mobile robot perceives static or dynamic obstacles on its planned route through sensors during walking, it updates the path in real time according to a certain algorithm, bypasses obstacles, and finally reaches the target point. Obstacle avoidance in the process of mobile robot navigation is one of the key technologies for the robot to complete the task. During the operation of the mowing robot, different obstacles will be encountered.
  • the current obstacle avoidance algorithms mainly include the following categories: Bug algorithm, potential field method, fuzzy logic control, obstacle avoidance method based on grid cost map, and artificial Intelligent algorithms for neural networks.
  • the bug algorithm is to walk around the detected obstacle outline after finding the obstacle, so as to bypass it. There are currently many variants of the Bug algorithm.
  • the artificial potential field obstacle avoidance control method imitating the concepts of electric potential and electric field force in physics, establishes a virtual potential field in the robot's workspace, and realizes local path planning according to the direction of the virtual potential field force.
  • the potential field method has many limitations in theory, such as the local minimum point problem, or the problem of oscillation. Fuzzy logic control method does not need to create an analyzable environment model, transform knowledge and experience into rules, and then generate fuzzy control output according to the rules of the rule base.
  • Obstacle avoidance based on the grid cost map is to use a heuristic algorithm to search for a safe path in the unit. After each grid is given a cost, the path planning problem becomes to find the optimal path between two grid nodes on the grid network. question.
  • the obstacle avoidance based on the artificial neural network is to input the external environment information into the trained neural network, and the obstacle avoidance control output can be obtained.
  • the neural network is a network system with parallel computing capabilities connected to each other according to a certain topology. It has a strong nonlinear fitting ability and the ability to simultaneously process multiple inputs and multiple outputs. Traditional bug algorithms and potential field methods can achieve better obstacle avoidance effects when dealing with static obstacles. When dealing with dynamic obstacles, they are often prone to low efficiency or even falling into local optimum.
  • the method based on the raster cost map often requires sensors such as lidar to obtain perceptual information, and the weeds in the environment have great interference to the sensors.
  • the present application provides an obstacle avoidance method for a lawnmowing robot.
  • the lawnmower robot selects corresponding obstacle avoidance strategies for dynamic obstacles and static obstacles according to the preset obstacle avoidance strategy by identifying the dynamic and static obstacles. , so that the mowing robot can cope with the different obstacle avoidance requirements of dynamic and static obstacles in practical applications, and effectively improve the obstacle avoidance efficiency.
  • FIG. 1 is a schematic flowchart of an embodiment of an obstacle avoidance method for a lawnmowing robot of the present application. It should be noted that this embodiment is not limited to the flow sequence shown in FIG. 1 if substantially the same result is obtained. As shown in Figure 1, this embodiment includes:
  • the lawn mowing robot When encountering an obstacle, the lawn mowing robot first uses its own sensor to identify and detect the obstacle and obtain information about the obstacle.
  • S130 Determine whether the obstacle is a static obstacle or a dynamic obstacle based on the information of the obstacle.
  • a corresponding obstacle avoidance strategy is selected according to the type information of the obstacle, so as to avoid the obstacle.
  • obstacles are divided into dynamic obstacles and static obstacles, and different obstacle avoidance strategies are adopted for the two kinds of obstacles. Further, based on the obstacle information, it is determined whether the obstacle is a static obstacle or a dynamic obstacle.
  • S150 Determine an obstacle avoidance strategy corresponding to a static obstacle or a dynamic obstacle.
  • a variety of obstacle avoidance strategies are preset.
  • the obstacle avoidance strategy of the dynamic obstacle is used to avoid the current obstacle.
  • Different dynamic obstacles correspond to different obstacle avoidance strategies of the dynamic obstacle.
  • the obstacle avoidance strategy of the static obstacle is used to avoid the current obstacle.
  • Different static obstacles correspond to different obstacle avoidance strategies for static obstacles.
  • the present application provides an obstacle avoidance method for a lawn mowing robot.
  • the lawn mowing robot recognizes the dynamic and static state of obstacles, and selects the corresponding method for dynamic obstacles and static obstacles according to a preset obstacle avoidance strategy
  • the obstacle avoidance strategy enables the mowing robot to cope with the different obstacle avoidance requirements of dynamic and static obstacles in practical applications, and effectively improves the obstacle avoidance efficiency.
  • three modules are provided, namely a visual and ultrasonic fusion perception module, an obstacle avoidance strategy module based on deep reinforcement learning, and an obstacle avoidance planning module.
  • Mobile robots need to obtain real-time information about obstacles around them, including size, shape, and position, through sensors.
  • sensors used for obstacle avoidance, each with different principles and characteristics.
  • the common ones are visual sensors, laser sensors, infrared sensors, ultrasonic sensors, etc.
  • visual sensors and ultrasonic sensors are mainly used.
  • a vision sensor and an ultrasonic sensor are installed on the lawn mowing robot, wherein the vision sensor is a monocular camera, and the visual and ultrasonic fusion perception module adopts the vision sensor and the ultrasonic sensor fusion method to obtain the information of the environment and obstacles, including the type information of obstacles, Size information, location information, and obstacle labels, etc.
  • the obstacle label is used to distinguish different detected obstacles, and different obstacles correspond to different labels.
  • the detected obstacle information temporarily store the detected obstacle information, predict the obstacle according to the obstacle's position information and obstacle label, and compare the currently detected obstacle information with the temporarily stored historical obstacle information, Duplicate obstacles are filtered out, thus avoiding obstacle ghosting. Then save the obstacle information and the time information of obtaining the obstacle information in the database, which is used to input the obstacle avoidance strategy module for obstacle avoidance strategy planning.
  • the time window is used to temporarily store the obstacle information.
  • the storage time of the accumulated obstacle information is accumulated. When the storage time is longer than the preset time, the obstacle information will be deleted from the database to avoid large errors due to time-limitation problems.
  • the obstacle avoidance strategy module based on deep reinforcement learning processes the information of obstacles and plans obstacle avoidance strategies for obstacles.
  • the obstacle avoidance strategy module based on deep reinforcement learning contains an obstacle avoidance control model, which is a deep neural network model obtained by using a large amount of actual and simulation data training, please refer to Figure 2,
  • Figure 2 is the mowing robot of this application
  • the deep reinforcement learning framework mainly includes state space, action policy space and reward function.
  • the state space is used to store the information of the robot and obstacles.
  • the information of the robot includes the robot’s current position information, attitude information, size information, and planned preset trajectory information. Obtained obstacle type information, size information, location information, etc.
  • the mowing robot obtains the type information of the obstacle, determines whether the obstacle is a static obstacle or a dynamic obstacle based on the information of the obstacle, and determines that the current obstacle avoidance strategy is the obstacle avoidance strategy of the dynamic obstacle when it is determined as a dynamic obstacle , the obstacle avoidance strategy of the dynamic obstacle includes using a warning method to warn and drive away the dynamic obstacle, and different dynamic obstacles may correspond to different obstacle avoidance strategies of the dynamic obstacle.
  • the obstacle avoidance strategy of the static obstacle includes using the corresponding obstacle avoidance path curve to avoid obstacles, or using the corresponding warning method to perform obstacle avoidance. After the prompt, use the corresponding obstacle avoidance path curve to avoid obstacles.
  • Different static obstacles can correspond to different static obstacle obstacle avoidance strategies. Based on the type information of static obstacles, use the corresponding obstacle avoidance path curve to avoid obstacles, or use The corresponding warning mode will be prompted and the corresponding obstacle avoidance path curve will be used for obstacle avoidance.
  • the warning means include swinging in place, and/or sound, and/or light.
  • the obstacle avoidance strategy of the dynamic obstacle After using the obstacle avoidance strategy of the dynamic obstacle to avoid the obstacle, determine whether the obstacle is moving; if the obstacle does not move, determine that the obstacle is a static obstacle; use the obstacle avoidance strategy of the static obstacle to avoid the obstacle.
  • the action strategy space is used to store the obstacle avoidance strategy of the mowing robot, such as the type of sound for avoiding obstacles, the type of light for avoiding obstacles, the type of obstacle avoiding actions, and the type of obstacle avoiding curves.
  • Each type of obstacle avoidance provides a variety of collocation options to pre-set an obstacle avoidance strategy for possible obstacles or combine multiple obstacle avoidance strategies.
  • the obstacle avoidance sound type includes prompt voice, such as regular voice, warning animal voice, reminding human voice, etc., and the corresponding sound volume.
  • the type of obstacle avoidance light can be steady on, flashing or marquee, etc. and the corresponding light color.
  • the type of obstacle avoidance action can be swinging left and right, swinging back and forth, or rotating, etc., and the corresponding action speed.
  • the type of obstacle avoidance curve can be straight line, spline function curve and its various combinations, etc. and the corresponding moving speed.
  • the generation process of the obstacle avoidance strategy can be: input the obstacle avoidance strategy information of the state space obstacle information and robot information, and the action strategy space into the trained obstacle avoidance control model, output the obstacle avoidance strategy for the obstacle, and mow the lawn robot Perform obstacle avoidance actions according to the output obstacle avoidance strategy.
  • the generation process of the above obstacle avoidance strategy can utilize the reward function.
  • the reward function is used to adjust the parameters of the obstacle avoidance control model according to external and internal evaluations, so as to select a better obstacle avoidance strategy for output.
  • scoring strategies can be adopted to provide feedback to the obstacle avoidance control model, and the scoring strategies are divided into robot self-scoring strategies and manual scoring strategies.
  • the mower robot After the mower robot completes the obstacle avoidance action, the mower robot can evaluate and score the obstacle avoidance parameters in the process of obstacle avoidance based on the obstacle avoidance effect, and the user can also avoid the obstacle according to the obstacle avoidance effect of the mower robot and its own satisfaction
  • the parameters are evaluated and scored, and the scoring results are fed back to the obstacle avoidance control model.
  • the obstacle avoidance control module learns the obstacle avoidance parameters with lower scores to output a better obstacle avoidance strategy for the mowing robot.
  • FIG. 3 is a schematic flowchart of another embodiment of an obstacle avoidance method for a lawnmowing robot of the present application. It should be noted that this embodiment is not limited to the flow sequence shown in FIG. 3 if substantially the same result is achieved. As shown in Figure 3, this embodiment includes:
  • the mowing robot is equipped with a visual sensor and an ultrasonic sensor.
  • the visual sensor is a monocular camera.
  • the mowing robot combines the visual sensor and the ultrasonic sensor to obtain obstacle information.
  • the lawn mowing robot uses the visual sensor to shoot obstacles, obtains images of obstacles from the camera, and inputs the captured images of obstacles into the trained deep learning model to recognize the type information, size information and visual position of obstacles information and output.
  • the ultrasonic sensor uses the ultrasonic sensor to send ultrasonic waves to the obstacle to obtain the ultrasonic distance information of the obstacle, and then combine the ultrasonic distance information obtained by the ultrasonic sensor with the visual position information output by the visual sensor to obtain the position information of the obstacle.
  • the mowing robot is moving, when the visual position information is output by the visual sensor, the distance between the obstacle and the mowing robot has changed, and the obstacle thinks that the visual position information of the mowing robot is inaccurate.
  • the ultrasonic sensor is used to obtain the ultrasonic distance information of the obstacle again, and the ultrasonic distance information is used as the distance information of the obstacle at this time, and the ultrasonic distance information is further optimized and adjusted to the visual position information, which can eliminate the delay error of the visual sensor and obtain location information of obstacles.
  • the ultrasonic sensor does not detect an obstacle, the visual position information acquired by the visual sensor is directly used as the position information of the obstacle.
  • the obstacle information includes obstacle type information, size information, location information, obstacle label, and the like.
  • the obstacle label is used to distinguish different detected obstacles, and different obstacles correspond to different labels.
  • the same obstacle will have different measurement and detection data twice before and after, which may cause the system to misidentify as two different objects. Therefore, temporarily store the detected obstacle information, predict the obstacle according to the obstacle's position information and obstacle label, and compare the currently detected obstacle information with the temporarily stored historical obstacle information, Duplicate obstacles are filtered out, thus avoiding obstacle ghosting. Then save the obstacle information and the time information of obtaining the obstacle information in the database, which is used to input the obstacle avoidance strategy module for obstacle avoidance strategy planning.
  • the time window is used to temporarily store the obstacle information, and the storage time of the obstacle information is accumulated.
  • the obstacle information is deleted from the database.
  • S320 Determine whether the obstacle is a static obstacle or a dynamic obstacle based on the information of the obstacle.
  • a corresponding obstacle avoidance strategy is selected according to the type information of the obstacle, so as to avoid the obstacle.
  • obstacles are divided into dynamic obstacles and static obstacles, and different obstacle avoidance strategies are adopted for the two kinds of obstacles.
  • the obstacle dynamic and static correspondence table is established in advance, and the type information of common obstacles and its corresponding static obstacle or dynamic obstacle are used as the obstacle dynamic and static correspondence table. According to the type information of the obstacle, the dynamic and static correspondence table of the obstacle is searched, and it is judged whether the obstacle is a static obstacle or a dynamic obstacle.
  • S330 Determine that the current obstacle avoidance strategy is an obstacle avoidance strategy for a dynamic obstacle if it is determined to be a dynamic obstacle.
  • the obstacle avoidance strategy of the dynamic obstacle is used to avoid the current obstacle, and different dynamic obstacles correspond to different obstacle avoidance strategies of the dynamic obstacle.
  • the obstacle avoidance strategy of the dynamic obstacle includes using a warning method to warn and drive away the dynamic obstacle, and the warning method includes an obstacle avoidance action, and/or sound, and/or light.
  • the warning method is used to warn and drive away the dynamic obstacles.
  • the obstacle avoidance action that can most attract the attention of the dynamic obstacle is selected according to the type of the dynamic obstacle, such as swinging in place, including but not limited to left and right swinging, forward and backward swinging, rotating etc., and adjust the speed of the swing for different dynamic obstacles.
  • the type of the dynamic obstacle such as swinging in place, including but not limited to left and right swinging, forward and backward swinging, rotating etc.
  • sound to warn and drive away a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios, such as different sounds for warning animals and warning people.
  • the provided obstacle avoidance strategy for the dynamic obstacle may include one or more warning methods, for example, in a specific embodiment, the marquee lights up for a dynamic obstacle while swinging left and right. Step S370 is performed after this step.
  • S350 Determine that the current obstacle avoidance strategy is an obstacle avoidance strategy for a static obstacle if it is determined to be a static obstacle.
  • step S330 is parallel to step S330, and like step S330, it is an alternative branch after step S320.
  • the obstacle avoidance strategy of the static obstacle is used to avoid the current obstacle.
  • Different static obstacles correspond to different obstacle avoidance strategies for static obstacles.
  • the obstacle avoidance strategy for static obstacles can be to use the corresponding obstacle avoidance path curve to avoid obstacles, or to use the corresponding warning methods to prompt and use the corresponding avoidance methods.
  • the obstacle avoidance can be performed according to the obstacle path curve, and the warning method can be an obstacle avoidance action, and/or sound, and/or light.
  • the obstacle avoidance curve can be used directly to circumvent the obstacle, or a warning can be issued while circumventing the obstacle to show that the current mowing robot is avoiding the obstacle.
  • the lawn mowing robot generates obstacle avoidance paths based on its own information and obstacle information. Specifically, when using the obstacle avoidance action to warn and drive away, select the obstacle avoidance action, such as swinging in place, which can be left and right swinging, forward and backward swinging, or rotating, and the speed of the swing can be adjusted. When using sound to warn and drive away, a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios.
  • the LED lights installed on the robot When using light to warn and drive away, mainly use the LED lights installed on the robot to pre-set different colors and lighting methods for the LED lights, such as constant light, flashing or marquee, etc., and choose different light colors.
  • the obstacle avoidance curve can be a combination of multiple straight lines, a combination of fitting multiple smooth curves, a combination of straight lines and smooth curves, etc., and the mowing robot uses the planned obstacle avoidance curve corresponding to The obstacle avoidance path moves to circumvent obstacles.
  • FIG. 4 is a schematic flowchart of an embodiment of a method for avoiding static obstacles of a lawnmowing robot of the present application. It should be noted that this embodiment is not limited to the flow sequence shown in FIG. 4 if substantially the same result is obtained. As shown in Figure 4, this embodiment includes:
  • S410 Determine the extended outline of the obstacle based on the size, position, and type information of the obstacle and the size information of the mowing robot.
  • the extended contour of the polygonal form of the obstacle is determined.
  • the actual contour is approximated as the actual contour of the polygonal form, and combined with the actual contour of the polygonal form.
  • the dimensional information of the lawnmowing robot determines the extended outline of the polygonal form of the obstacle.
  • the position information of the obstacle is used to obtain the obstacle's positioning coordinates, and the obstacle's positioning coordinates and its type information and size information are used to determine its actual outline.
  • the mowing robot can avoid obstacles along the actual contour of obstacles, reduce the path length in the process of obstacle avoidance, and expand the actual contour of obstacles to the outside to obtain the extended contour.
  • Part of the extended contour will be used as the newly planned obstacle avoidance path, that is, the mowing robot will walk on the obstacle avoidance path, so the size of the extended contour will affect the walking path length of the mowing robot and the obstacle avoidance process of the mowing robot. Will it collide with obstacles.
  • the size information of the mowing robot is obtained in advance, and the size information of the mowing robot is used to determine the extension range of the extended contour, so that the mowing robot will not collide with obstacles when walking on the extended contour.
  • the actual outline can be in various forms, such as circle, polygon, etc., but the circle has high requirements for the walking of the mowing robot and the difficulty of obtaining coordinates is high.
  • the circle It is not easy to find the nodes on the new path.
  • the actual outline of the obstacle is approximated as a polygon, based on the actual outline of the polygon shape combined with the size information of the mowing robot. Expand a certain distance to form a larger polygon, and use the larger polygon as the expanded outline of the polygon shape of the obstacle.
  • the polygon has multiple vertices and sides.
  • FIG. 5 a is a schematic diagram of an expanded outline of an obstacle in the obstacle avoidance method of the lawnmowing robot of the present application.
  • the contour of the obstacle is approximated as a quadrilateral, and the contour of the obstacle is extended outward to a larger quadrilateral to obtain the expanded contour, that is, the expansion layer.
  • the mowing robot continues to move forward along the current path
  • the point that leaves the inside of the obstacle is used as the target point on the waypoint.
  • the intersection Take the intersection as the starting point to search along the extended contour until the line between the contour point on the extended contour and the target point on the path point does not intersect with the obstacle, and determine the contour point at the time of intersection;
  • the extended contour part from the intersection point to the contour point, and the line part from the contour point to the target point are used as new path points and obstacle avoidance paths.
  • FIG. 5b is a schematic diagram of a first embodiment of path planning in an obstacle avoidance method for a lawnmowing robot of the present application.
  • the curve A-B is the current path of the mowing robot, wherein, point A is the current location of the mowing robot, and point B is the target point.
  • the intersection points of the current path and the actual contour of the obstacle are points C and D.
  • the lawnmowing robot detects forward along the current planned path, detects whether there is a point inside the obstacle, and uses a detected point inside the obstacle as an interior point, as shown in Figure 5b , the points between point C and point D on the curve A-B are all interior points, select point E as the interior point, connect the self-position of the mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour as Point F.
  • the intersection point F is used as the starting point, and the path point is searched along the extended contour until the point on the extended contour and the target point on the path point do not intersect with the obstacle, and the point at the time of intersection is determined as the contour point, such as The point a on the extended contour is searched, the line between point a and point B of the target point does not intersect with the obstacle, and point a is determined to be the contour point; the self position of the mowing robot to the intersection point, the extended contour part of the intersection point to the contour point, And the line part from the contour point to the target point is used as a new path point, and is used as an obstacle avoidance path, that is, the line A-F-a-B is used as an obstacle avoidance path.
  • FIG. 5c is a schematic diagram of a second embodiment of path planning in the obstacle avoidance method of the lawnmowing robot of the present application.
  • the lawnmowing robot detects forward along the current planned path, detects whether there is a path point located inside the obstacle, and uses the first detected point inside the obstacle as an interior point, as shown in Fig.
  • the points between point C and point D on the curve A-B are all interior points, and point C is selected as the interior point, and the self-position of the mowing robot is connected with the interior point to determine the connection between the line and the extended contour.
  • the point of intersection is point G.
  • the intersection point G is used as the starting point, and the path point search is carried out along the extended contour until the point on the extended contour and the target point on the path point do not intersect with obstacles, and the point at the time of intersection is determined as the contour point, such as The point b on the extended contour is searched, the line between point b and the target point B does not intersect with the obstacle, and point b is determined to be the contour point; the self position of the mowing robot to the intersection point, the intersection point to the extended contour part of the contour point, And the line part from the contour point to the target point is used as a new path point, and is used as an obstacle avoidance path, that is, the line A-G-b-B is used as an obstacle avoidance path.
  • FIG. 5d is a schematic diagram of a third embodiment of path planning in the obstacle avoidance method of the lawnmowing robot of the present application.
  • the lawn mowing robot detects forward along the current planned path, detects whether there is a path point that is a point inside the obstacle, and uses the first detected point inside the obstacle as an interior point.
  • the points between point C and point D on the curve A-B are all interior points, and point C is selected as the interior point. Connect the self-position of the lawn mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour.
  • intersection point As the starting point, search both sides along the extended contour until the points on both sides of the extended contour and the target point on the path point do not intersect with obstacles, and connect the two sides of the mowing robot
  • the path point of the shorter part of the line in the part is used as a new path point and as an obstacle avoidance path.
  • the line part is the extended contour part from the position of the mowing robot to the intersection point, the intersection point to the contour point, and the contour point to the contour point.
  • the connecting line of the target point; the lawn mowing robot wants to search both sides of the extended contour from point G respectively, and searches for point c and point d on the extended contour respectively, and points c and d are connected to point B of the target point If it does not intersect with an obstacle, the shorter connection between the A-G-c-B connection and the A-G-d-B connection is judged respectively, and the A-G-c-B connection is shorter.
  • the obstacle is approximated as a polygon, and the expansion layer is set for the obstacle, and the obstacle avoidance path is searched along the expansion layer, so as to avoid the collision between the mowing robot and the obstacle during the obstacle avoidance process, which can be convenient and fast Get the obstacle avoidance path.
  • S370 Obtain the obstacle avoidance score of the lawn mowing robot, and adjust the obstacle avoidance parameters of the lawn mower robot based on the obstacle avoidance score.
  • the obstacle avoidance scoring is performed by the mowing robot itself, or the user directly scores manually, or combines the scoring of the mowing robot with manual scoring, and adjusts the parameters of the mowing robot in the entire obstacle avoidance planning process based on the obstacle avoidance score. In order to make the obstacle avoidance accuracy of the mowing robot higher.
  • the obstacle avoidance effect of static obstacles and dynamic obstacles can be directly scored, and the parameters of the warning method can also be evaluated, such as the type of obstacle avoidance sound, obstacle avoidance light type, obstacle avoidance action type and obstacle avoidance curve type
  • the scoring, or the combination of sound level, light color, warning method, etc. can be directly scored.
  • the specific obstacle avoidance parameters used in the obstacle avoidance process such as the execution distance between the mowing robot and the obstacle when the mowing robot needs to execute the obstacle avoidance strategy, and the mowing robot’s The shortest distance to obstacles, the walking speed and angular velocity of the mowing robot when avoiding obstacles, the actual contour curve and the shape of the expansion layer curve, etc.
  • the obstacle avoidance score can be a combination of obstacle avoidance strategies, scoring a combination of various obstacle avoidance sound types, obstacle avoidance light types, obstacle avoidance action types, or obstacle avoidance curve types.
  • the combined score is lower than
  • preset scores adjust the combination of each obstacle avoidance type so that the combined score is not lower than the combined preset score.
  • the obstacle avoidance score may be a dynamic obstacle avoidance score and a static obstacle avoidance score.
  • the dynamic obstacle avoidance score is lower than the dynamic obstacle avoidance preset score
  • the dynamic obstacle corresponding Adjust the warning method so that the dynamic obstacle avoidance score is not lower than the dynamic obstacle avoidance preset score
  • the static obstacle avoidance score is lower than the static obstacle avoidance preset score
  • the corresponding static obstacle avoidance score is Adjust the obstacle avoidance path curve and/or warning mode of the vehicle, so that the static obstacle avoidance score is not lower than the static obstacle avoidance preset score.
  • the obstacle avoidance score may be an execution distance score and an obstacle avoidance distance score, wherein the obstacle avoidance score is the shortest distance between the mowing robot and the obstacle when the mowing robot executes the obstacle avoidance strategy.
  • the execution distance score is lower than the execution distance preset score
  • the execution distance of the mowing robot is adjusted so that the execution distance score is not lower than the execution distance preset score;
  • the obstacle evasion distance score is lower than the obstacle evasion distance preset score , adjust the obstacle avoidance distance of the mowing robot so that the obstacle avoidance distance score is not lower than the obstacle avoidance distance preset score.
  • the obstacle avoidance score can be a speed score and an angular velocity score.
  • the speed score is lower than the speed preset score
  • the speed of the mowing robot is adjusted so that the speed score is not lower than the speed preset score
  • the angular velocity score is lower than the preset angular velocity score
  • the angular velocity of the mowing robot is adjusted so that the angular velocity score is not lower than the preset velocity score.
  • the obstacle avoidance score can be the actual contour curve and the expansion layer curve form, etc.
  • the specific adjustment method may include changing the angle of the contour curve and/or changing the number of polygon sides of the contour curve and/or changing the side length of the polygon of the contour curve, etc.;
  • the curve shape of the expansion layer is preset, the curve shape of the expansion layer of the lawn mowing robot is adjusted so that the score of the curve shape of the expansion layer is not lower than the preset score of the curve shape of the expansion layer.
  • the specific adjustment method can be to change the curve of the expansion layer. angle and/or change the number of sides of the polygon of the curve of the expansion layer and/or change the length of the sides of the polygon of the curve of the expansion layer, etc.
  • the obstacle avoidance score can be a sound type score and a sound size score.
  • the sound type score is lower than the sound type preset score, the sound type of the mowing robot is adjusted so that the sound type score is not low.
  • the sound size of the mowing robot is adjusted so that the sound size score is not lower than the speed preset score.
  • the mowing robot of the present invention is equipped with a relatively low-cost sensor, a monocular camera and an ultrasonic sensor, and detects obstacles through fusion perception, which can effectively improve obstacle detection stability and measurement accuracy.
  • Classify obstacles Different types of obstacles adopt different obstacle avoidance strategies. By identifying the dynamic and static obstacles of obstacles, according to the preset obstacle avoidance strategies, select corresponding avoidance strategies for dynamic obstacles and static obstacles.
  • the obstacle strategy enables the mowing robot to cope with the different obstacle avoidance requirements of dynamic and static obstacles in practical applications, and effectively improves the obstacle avoidance efficiency.
  • a reinforcement learning decision-making module is set up to learn online during use, and the obstacle avoidance strategy and multiple obstacle avoidance parameters can be adjusted online, so that users can independently adjust the obstacle avoidance mode according to the actual use environment to optimize the obstacle avoidance performance.
  • FIG. 6 is a schematic flowchart of another embodiment of an obstacle avoidance method for a lawnmowing robot. It should be noted that this embodiment is not limited to the flow sequence shown in FIG. 6 if substantially the same result is achieved. As shown in Figure 6, this embodiment includes:
  • the mowing robot is equipped with a visual sensor and an ultrasonic sensor.
  • the visual sensor is a monocular camera.
  • the mowing robot combines the visual sensor and the ultrasonic sensor to obtain obstacle information.
  • the lawn mowing robot uses the visual sensor to shoot obstacles, obtains images of obstacles from the camera, and inputs the captured images of obstacles into the trained deep learning model to recognize the type information, size information and visual position of obstacles information and output.
  • the ultrasonic sensor uses the ultrasonic sensor to send ultrasonic waves to the obstacle to obtain the ultrasonic distance information of the obstacle, and then combine the ultrasonic distance information obtained by the ultrasonic sensor with the visual position information output by the visual sensor to obtain the position information of the obstacle.
  • the mowing robot is moving, when the visual position information is output by the visual sensor, the distance between the obstacle and the mowing robot has changed, and the obstacle thinks that the visual position information of the mowing robot is inaccurate.
  • the ultrasonic sensor is used to obtain the ultrasonic distance information of the obstacle again, and the ultrasonic distance information is used as the distance information of the obstacle at this time, and the ultrasonic distance information is further optimized and adjusted for the visual position information, eliminating the delay error of the visual sensor, and obtaining location information of obstacles.
  • the ultrasonic sensor does not detect an obstacle, the visual position information acquired by the visual sensor is directly used as the position information of the obstacle.
  • S620 Determine whether the obstacle is a static obstacle or a dynamic obstacle based on the information of the obstacle.
  • a corresponding obstacle avoidance strategy is selected according to the type information of the obstacle, so as to avoid the obstacle.
  • obstacles are divided into dynamic obstacles and static obstacles, and different obstacle avoidance strategies are adopted for the two kinds of obstacles.
  • the obstacle dynamic and static correspondence table is established in advance, and the type information of common obstacles and its corresponding static obstacle or dynamic obstacle are used as the obstacle dynamic and static correspondence table. According to the type information of the obstacle, the dynamic and static correspondence table of the obstacle is searched, and it is judged whether the obstacle is a static obstacle or a dynamic obstacle.
  • S630 Determine that the current obstacle avoidance strategy is an obstacle avoidance strategy for a dynamic obstacle if it is determined to be a dynamic obstacle.
  • the obstacle avoidance strategy of the dynamic obstacle is used to avoid the current obstacle, and different dynamic obstacles correspond to different obstacle avoidance strategies of the dynamic obstacle.
  • the obstacle avoidance strategy of the dynamic obstacle includes using a warning method to warn and drive away the dynamic obstacle, and the warning method may be an obstacle avoidance action, and/or sound, and/or light.
  • the warning method is used to warn and drive away the dynamic obstacles.
  • the obstacle avoidance action that can most attract the attention of the dynamic obstacle is selected according to the type of the dynamic obstacle, such as swinging in place, which can be left and right, back and forth, or rotation. , and adjust the speed of the swing for different dynamic obstacles.
  • the type of the dynamic obstacle such as swinging in place, which can be left and right, back and forth, or rotation.
  • sound to warn and drive away a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios, such as different sounds for warning animals and warning people.
  • the provided obstacle avoidance strategy for the dynamic obstacle may include one or more warning methods, for example, in a specific embodiment, the marquee lights up for a dynamic obstacle while swinging left and right.
  • the obstacle is detected again to determine whether the obstacle has moved; if the obstacle leaves the current line of sight, the current preset task is resumed; if the obstacle does not move, then The obstacle is identified as a static obstacle, and the obstacle avoidance strategy of the static obstacle is used for obstacle avoidance.
  • S650 Use the obstacle avoidance strategy of static obstacles to avoid obstacles.
  • the obstacle avoidance strategy of the static obstacle is used to avoid the current obstacle.
  • Different static obstacles correspond to different obstacle avoidance strategies for static obstacles.
  • the obstacle avoidance strategy for static obstacles includes using the corresponding obstacle avoidance path curve to avoid obstacles, or using the corresponding warning methods to prompt and using the corresponding obstacle avoidance
  • the path curve is used to avoid obstacles, and the warning method can be an obstacle avoidance action, and/or sound, and/or light.
  • the obstacle avoidance curve can be used directly to circumvent the obstacle, or a warning can be issued while circumventing the obstacle to show that the current mowing robot is avoiding the obstacle.
  • the lawn mowing robot generates obstacle avoidance paths based on its own information and obstacle information. Specifically, when using an obstacle avoidance action to warn and drive away, select an obstacle avoidance action, such as swinging in place, which can be left and right swinging, forward and backward swinging, or rotating, and the speed of the swing can be adjusted. When using sound to warn and drive away, a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios.
  • the LED lights installed on the robot When using light to warn and drive away, mainly use the LED lights installed on the robot to pre-set different colors and lighting methods for the LED lights, such as constant light, flashing or marquee, etc., and choose different light colors.
  • the obstacle avoidance curve can be a combination of multiple straight lines, a combination of fitting multiple smooth curves, a combination of straight lines and smooth curves, etc., and the mowing robot uses the planned obstacle avoidance curve corresponding to The obstacle avoidance path moves to circumvent obstacles.
  • S660 Obtain the obstacle avoidance score of the lawn mowing robot, and adjust the obstacle avoidance parameters of the lawn mower robot based on the obstacle avoidance score.
  • the obstacle avoidance scoring is performed by the mowing robot itself, or the user directly scores manually, or combines the scoring of the mowing robot with manual scoring, and adjusts the parameters of the mowing robot in the entire obstacle avoidance planning process based on the obstacle avoidance score. In order to make the obstacle avoidance accuracy of the mowing robot higher.
  • the lawnmowing robot of the present invention is equipped with relatively low-cost sensors, a monocular camera and an ultrasonic sensor, and detects obstacles through fusion perception, which can effectively improve the stability of obstacle detection and measurement accuracy.
  • Classify obstacles adopt corresponding obstacle avoidance strategies for different types of obstacles, identify dynamic and static obstacles, and select dynamic obstacle avoidance strategies for dynamic obstacles according to preset obstacle avoidance strategies.
  • the obstacle avoidance strategy of the static obstacle is used, so that the mowing robot can cope with the different obstacle avoidance requirements of the dynamic and static obstacles in practical applications, and effectively improve the obstacle avoidance efficiency.
  • a reinforcement learning decision-making module is set up to learn online during use, and the obstacle avoidance strategy and multiple obstacle avoidance parameters can be adjusted online, so that users can independently adjust the obstacle avoidance mode according to the actual use environment to optimize the obstacle avoidance performance.
  • FIG. 7 is a schematic flowchart of a specific obstacle avoidance method of the mowing robot in the embodiment of the present application.
  • the lawn mowing robot detects obstacles using the visual ultrasonic fusion perception module.
  • the mowing robot is equipped with visual sensors and ultrasonic sensors, wherein the visual sensor is a monocular camera.
  • the mowing robot combines the visual sensor and the ultrasonic sensor to obtain obstacle information.
  • the obstacle information includes obstacle The type information, size information and location information of the object.
  • the lawn mowing robot uses the visual sensor to shoot obstacles, obtains images of obstacles from the camera, and inputs the captured images of obstacles into the trained deep learning model to recognize the type information, size information and visual position of obstacles information and output.
  • the ultrasonic sensor uses the ultrasonic sensor to send ultrasonic waves to the obstacle to obtain the ultrasonic distance information of the obstacle, and then combine the ultrasonic distance information obtained by the ultrasonic sensor with the visual position information output by the visual sensor to obtain the position information of the obstacle.
  • the mowing robot is moving, when the visual position information is output by the visual sensor, the distance between the obstacle and the mowing robot has changed, and the obstacle thinks that the visual position information of the mowing robot is inaccurate.
  • the ultrasonic sensor is used to obtain the ultrasonic distance information of the obstacle again, and the ultrasonic distance information is used as the distance information of the obstacle at this time, and the ultrasonic distance information is further optimized and adjusted for the visual position information, eliminating the delay error of the visual sensor, and obtaining location information of obstacles.
  • the ultrasonic sensor does not detect an obstacle, the visual position information acquired by the visual sensor is directly used as the position information of the obstacle.
  • the obstacle information includes obstacle type information, size information, location information, obstacle label, and the like.
  • the obstacle label is used to distinguish different detected obstacles, and different obstacles correspond to different labels.
  • the same obstacle will have different measurement and detection data twice before and after, which may cause the system to misidentify as two different objects. Therefore, temporarily store the detected obstacle information, predict the obstacle according to the obstacle's position information and obstacle label, and compare the currently detected obstacle information with the temporarily stored historical obstacle information, Duplicate obstacles are filtered out, thus avoiding obstacle ghosting. Then save the obstacle information and the time information of obtaining the obstacle information in the database, which is used to input the obstacle avoidance strategy module for obstacle avoidance strategy planning.
  • the time window is used to temporarily store the obstacle information, and the storage time of the obstacle information is accumulated.
  • the obstacle information is deleted from the database.
  • the obstacle information is sent to the deep reinforcement learning module for decision-making, and the obstacle avoidance strategy module based on deep reinforcement learning processes the obstacle information, and plans the obstacle avoidance strategy for the obstacle.
  • the obstacle avoidance strategy module based on deep reinforcement learning contains an obstacle avoidance control model, which is a deep neural network model trained by using a large amount of actual and simulation data, which classifies the input obstacle information and provides different types of obstacles. Different obstacle avoidance strategies are set for obstacles. In the embodiment of the present application, the corresponding obstacle avoidance strategy is selected according to the type information of the obstacle, so as to avoid the obstacle. In one embodiment, obstacles are divided into dynamic obstacles and static obstacles, and different obstacle avoidance strategies are adopted for the two kinds of obstacles.
  • the obstacle dynamic and static correspondence table is established in advance, and the type information of common obstacles and its corresponding static obstacle or dynamic obstacle are used as the obstacle dynamic and static correspondence table. According to the type information of the obstacle, the dynamic and static correspondence table of the obstacle is searched, and it is judged whether the obstacle is a static obstacle or a dynamic obstacle.
  • the obstacle avoidance strategy of the dynamic obstacle is used to avoid the current obstacle, and different dynamic obstacles correspond to different obstacle avoidance strategies of the dynamic obstacle .
  • circumvention is not required.
  • the obstacle avoidance action such as swinging in place, can be swinging left and right, swinging back and forth, or rotating, and adjusts the swing speed for different dynamic obstacles.
  • sound to warn and drive away a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios, such as different sounds for warning animals and warning people.
  • the provided obstacle avoidance strategy for the dynamic obstacle may include one or more warning methods, for example, in a specific embodiment, the marquee lights up for a dynamic obstacle while swinging left and right.
  • the obstacle is detected again to determine whether the obstacle has moved; barrier.
  • the obstacle does not move and it is convenient to plan the path, so it is necessary to circumvent the obstacle. You can directly use the obstacle avoidance curve to avoid obstacles, or you can give a warning while avoiding obstacles to show that the current mowing robot is avoiding obstacles.
  • the obstacle avoidance strategy of the static obstacle is used to avoid the obstacle.
  • the static obstacle avoidance strategy is to use the corresponding obstacle avoidance path curve to avoid the obstacle, or use the corresponding warning method to give a prompt Use the corresponding obstacle avoidance path curve to avoid obstacles.
  • select the obstacle avoidance action such as swinging in place, which can be left and right swinging, forward and backward swinging, or rotating, and the speed of the swing can be adjusted.
  • sound to warn and drive away a variety of different obstacle avoidance sounds are pre-generated to deal with different obstacle avoidance scenarios.
  • the LED lights installed on the robot When using light to warn and drive away, mainly use the LED lights installed on the robot to pre-set different colors and lighting methods for the LED lights, such as constant light, flashing or marquee, etc., and choose different light colors.
  • the obstacle avoidance curve can be a combination of multiple straight lines, a combination of fitting multiple smooth curves, a combination of straight lines and smooth curves, etc., and the mowing robot uses the planned obstacle avoidance curve corresponding to The obstacle avoidance path moves to circumvent obstacles.
  • the obstacle avoidance path selects a combination of multiple straight lines
  • the mowing robot is based on the information of the robot itself and the information of the obstacles, that is, based on its own position, path point and size information and the size, position, distance and type information of the obstacles.
  • the way point is the set of points on the obstacle avoidance path of the mowing robot.
  • the extended contour of the polygonal form of the obstacle is determined.
  • the actual contour is approximated as the actual contour of the polygonal form, and combined with the actual contour of the polygonal form.
  • the dimensional information of the lawnmowing robot determines the extended outline of the polygonal form of the obstacle.
  • the location coordinates of the obstacle are firstly obtained by using the location information of the obstacle, and the actual outline of the obstacle is determined by using the location coordinates of the obstacle and its type information and size information. Extend the actual contour of the obstacle to the outside to obtain the extended contour.
  • the size information of the mowing robot is acquired in advance, and the size information of the mowing robot is used to determine the extension range of the extended contour, so that the mowing robot will not collide with obstacles when walking on the extended contour.
  • the actual outline of the obstacle is approximated as a polygon, and based on the actual outline of the polygon shape combined with the size information of the mowing robot, a larger polygon is formed by a certain distance.
  • the larger polygon acts as an expanded outline of the obstacle's polygonal form.
  • the mowing robot detects forward along the current planned path, detects whether there is a path point that is a point inside the obstacle, and uses a detected point inside the obstacle as an interior point, and the mowing robot moves along The current path continues to detect forward, and the point that leaves the inside of the obstacle is used as the target point on the path point. Connect the self-position of the lawn mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour.
  • intersection point as the starting point, search for path points along the extended contour until the line between the point on the extended contour and the target point on the path point does not intersect with obstacles, and determine the intersection point as the contour point; mow the grass
  • the robot's own position to the intersection point, the extended contour part from the intersection point to the contour point, and the line part from the contour point to the target point are used as new path points and obstacle avoidance paths.
  • the mowing robot detects forward along the current planned path, detects whether there is a path point located inside the obstacle, and uses the first detected point inside the obstacle as an interior point to mow the grass. The robot continues to detect forward along the current path, and takes the point away from the inside of the obstacle as the target point on the path point. Connect the self-position of the lawn mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour.
  • intersection point as the starting point, search for path points along the extended contour until the line between the point on the extended contour and the target point on the path point does not intersect with obstacles, and determine the intersection point as the contour point; mow the grass
  • the robot's own position to the intersection point, the extended contour part from the intersection point to the contour point, and the line part from the contour point to the target point are used as new path points and obstacle avoidance paths.
  • the mowing robot detects forward along the current planned path, detects whether there is a path point that is a point inside an obstacle, and uses the first detected point inside an obstacle as an interior point, mowing The grass robot continues to detect along the current path, and takes the point leaving the inside of the obstacle as the target point on the path point. Connect the self-position of the lawn mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour.
  • intersection point search both sides along the extended contour until the points on both sides of the extended contour and the target point on the path point do not intersect with obstacles, and connect the two sides of the mowing robot
  • the path point of the shorter part of the line in the part is used as a new path point and as an obstacle avoidance path.
  • the line part is the extended contour part from the position of the mowing robot to the intersection point, the intersection point to the contour point, and the contour point to the contour point.
  • the connection line of the target point the self position of the mowing robot to the intersection point, the extended contour part from the intersection point to the contour point, and the connection line part from the contour point to the target point as a new path point, and as an obstacle avoidance path.
  • the mowing robot detects forward along the current planned path, detects whether there is a path point that is a point inside an obstacle, and uses the first detected point inside an obstacle as an interior point, mowing The grass robot continues to detect along the current path, and takes the point leaving the inside of the obstacle as the target point on the path point. Connect the self-position of the lawn mowing robot with the interior point, and determine the intersection point of the connection line and the extended contour.
  • intersection point search both sides along the extended contour until the points on both sides of the extended contour and the target point on the path point do not intersect with obstacles, and connect the two sides of the mowing robot
  • the path point of the shorter part of the line in the part is used as a new path point and as an obstacle avoidance path.
  • the line part is the extended contour part from the position of the mowing robot to the intersection point, the intersection point to the contour point, and the contour point to the contour point.
  • the connection line of the target point the self position of the mowing robot to the intersection point, the extended contour part from the intersection point to the contour point, and the connection line part from the contour point to the target point as a new path point, and as an obstacle avoidance path.
  • the current path of the mowing robot is detected along the current planned path of the mowing robot, and whether there is a path point that is located inside the obstacle is detected, and the first detected point located inside the obstacle
  • the point is used as the interior point, and the self-position of the mowing robot is connected with the interior point, and the intersection point of the connection line and the extended contour is determined.
  • the user can input the evaluation into the deep reinforcement learning module at any time to adjust the obstacle avoidance parameters at any time.
  • the obstacle avoidance effect of static obstacles and dynamic obstacles can be directly scored, and the parameters of the warning method, such as the specific obstacle avoidance sound type, obstacle avoidance light type, obstacle avoidance action type and obstacle avoidance curve type
  • the scoring, as well as the combination of sound level, light color, warning mode, etc., are directly scored.
  • the specific obstacle avoidance parameters used in the obstacle avoidance process such as the execution distance between the mowing robot and the obstacle when the mowing robot needs to execute the obstacle avoidance strategy, and the mowing robot’s The shortest distance to obstacles, the walking speed and angular velocity of the mowing robot when avoiding obstacles, etc.
  • the obstacle avoidance score includes the combination of obstacle avoidance strategies, and scores the combination of various obstacle avoidance sound types, obstacle avoidance light types, obstacle avoidance action types, and obstacle avoidance curve types.
  • the combination of obstacle avoidance strategies When the method is inappropriate, the warning obstacle cannot be reminded to leave in time. Therefore, when the combination score is lower than the combination preset score, adjust the combination of each obstacle avoidance type to make the combination of obstacle avoidance strategies better, that is, the combination score does not Below the combined preset rating.
  • the obstacle avoidance score may be a dynamic obstacle avoidance score and a static obstacle avoidance score.
  • the dynamic obstacle avoidance score is lower than the dynamic obstacle avoidance preset score
  • the dynamic obstacle corresponding Adjust the warning method so that the dynamic obstacle avoidance score is not lower than the dynamic obstacle avoidance preset score
  • the static obstacle avoidance score is lower than the static obstacle avoidance preset score
  • the corresponding static obstacle avoidance score is Adjust the obstacle avoidance path curve and/or warning mode of the vehicle, so that the static obstacle avoidance score is not lower than the static obstacle avoidance preset score.
  • the obstacle avoidance score may be an execution distance score and an obstacle avoidance distance score, wherein the obstacle avoidance score is the shortest distance between the mowing robot and the obstacle during the process of the mowing robot executing the obstacle avoidance strategy.
  • the execution distance is too far, the running target point of the mowing robot may be adjusted during the path planning process, or new obstacles may appear during the path planning process, making the path planning fail.
  • the execution distance is too short, it may not be able to adjust the path change in time, so that it collides with obstacles during the path planning process.
  • the execution distance of the mowing robot is adjusted so that the execution distance score is not lower than the execution distance preset score;
  • the planned path is far away, and it takes a long time to avoid obstacles, which reduces the efficiency of obstacle avoidance.
  • the obstacle evasion distance score is lower than the obstacle evasion distance preset score
  • the obstacle evasion distance of the mowing robot is adjusted so that the obstacle evasion distance score is not lower than the obstacle evasion distance preset score.
  • the obstacle avoidance score can be a speed score and an angular velocity score.
  • the speed score is lower than the speed preset score
  • the speed of the mowing robot is adjusted so that the speed score is not lower than the speed preset score
  • the angular velocity score is lower than the preset angular velocity score
  • the angular velocity of the mowing robot is adjusted so that the angular velocity score is not lower than the preset velocity score.
  • the obstacle avoidance score can be the actual contour curve and the shape of the expansion layer curve, etc.
  • the actual contour curve set for the obstacle will affect the shape of the expansion layer curve.
  • the actual contour curve score is lower than the actual contour curve preset
  • the actual contour curve of the mowing robot is adjusted so that the speed score is not lower than the speed preset score.
  • the specific adjustment method may include changing the angle of the contour curve and/or changing the number of polygonal sides of the contour curve and/or Change the side length of the polygon of the contour curve, etc.; the shape of the expansion layer curve will affect the obstacle avoidance path of the lawn mowing robot.
  • the specific adjustment method may include changing the expansion The angle of the layer curve and/or changing the number of polygon sides of the expansion layer curve and/or changing the side length of the polygon of the expansion layer curve, etc.
  • the obstacle avoidance score can be a sound type score and a sound level score.
  • sound reminders will be used to drive away dynamic obstacles. Therefore, when the sound type score is lower than the sound type preset score, adjust the sound type of the mowing robot so that the sound type score is not lower than the sound type preset score; when the sound of the obstacle avoidance reminder If the sound is too small, the repelling effect cannot be achieved, and when the sound is too loud, noise interference will occur. Therefore, when the sound level score is lower than the sound level preset score, adjust the sound level of the lawn mowing robot to make the sound level Score no lower than the Speed Preset Score.
  • the mowing robot will judge the information of obstacles in real time, and if a new obstacle appears, the steps of this embodiment will be repeated.
  • the lawnmowing robot of the present invention is equipped with relatively low-cost sensors, a monocular camera and an ultrasonic sensor, and detects obstacles through fusion perception, which can effectively improve the stability of obstacle detection and measurement accuracy.
  • Classify obstacles Different types of obstacles adopt different obstacle avoidance strategies. By identifying the dynamic and static obstacles of obstacles, according to the preset obstacle avoidance strategy, select the corresponding obstacle avoidance for dynamic obstacles and static obstacles. The strategy enables the mowing robot to cope with the different obstacle avoidance requirements of dynamic and static obstacles in practical applications, and effectively improves the obstacle avoidance efficiency.
  • a reinforcement learning decision-making module is set up to learn online during use, and the obstacle avoidance strategy and multiple obstacle avoidance parameters can be adjusted online, so that users can independently adjust the obstacle avoidance mode according to the actual use environment to optimize the obstacle avoidance performance.
  • FIG. 8 is a schematic structural diagram of a lawn mowing robot in an embodiment of the present application.
  • the mowing robot includes a body 81 , a mowing component 82 , an information collection component 83 and a controller 84 .
  • the mowing assembly 82 is installed on the body; the information collection assembly 83 is installed on the body and is used to collect obstacle information; the controller 84 is installed on the body and is used to control the body to cooperate with the information collection assembly, using the above-mentioned obstacle avoidance method of the mowing robot.
  • Avoidance This application uses the mowing robot to identify the dynamic and static obstacles, and select the corresponding obstacle avoidance strategy for the dynamic and static obstacles according to the preset obstacle avoidance strategy, so that the mowing robot can cope with the dynamic and static obstacles in practical applications. Static obstacles have different obstacle avoidance requirements, effectively improving the obstacle avoidance efficiency.
  • the disclosed system, device and method can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or integrated. to another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.

Landscapes

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

Abstract

一种割草机器人的避障方法和割草机器人,割草机器人的避障方法包括:割草机器人获得障碍物的信息;基于障碍物的信息确定障碍物为静态障碍物或动态障碍物;确定静态障碍物或动态障碍物对应的避障策略;利用确定的避障策略进行避障。

Description

一种割草机器人避障方法和割草机器人 技术领域
本发明涉及割草机器人技术领域,特别是涉及一种割草机器人避障方法和割草机器人。
背景技术
避障是指移动机器人在行走过程中,通过传感器感知到在其规划路线上存在障碍物时,按照一定的算法实时更新路径,绕过障碍物,最后达到目标点。移动机器人导航过程中的避障是机器人完成作业任务的关键技术之一。
本申请的发明人在长期研发中发现,割草机器人运行过程中,会遇到各种不同的动态和静态障碍物。传统的bug算法和势场法等在应对静态障碍物时能获得比较好的避障效果,但在动态障碍物时,往往容易出现效率低甚至陷入局部最优的情况。
发明内容
本发明主要解决的技术问题是提供一种割草机器人避障方法和割草机器人,能够使割草机器人应对动静态障碍物不同的避障需求,有效提高避障效率。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种割草机器人的避障方法,该割草机器人的避障方法包括:割草机器人获得障碍物的信息;基于障碍物的信息确定障碍物为静态障碍物或动态障碍物;确定静态障碍物或动态障碍物对应的避障策略;利用确定的避障策略进行避障。
其中,确定静态障碍物或动态障碍物对应的避障策略包括:在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略;利用确定的避障策略进行避障包括:利用声和/或光的方式进行警告驱离。
其中,利用动态障碍物的避障策略进行避障之后包括:确定障碍物是否移动;响应于障碍物未移动,确定障碍物为静态障碍物;利用静态障碍物的避障策略进行避障。
其中,割草机器人获得障碍物的信息包括:割草机器人获得障碍物的类型信息;基于障碍物的信息确定障碍物为静态障碍物或动态障碍物包括:基于障碍物的类型信息确定障碍物为静态障碍物或动态障碍物;确定静态障碍物或动态障碍物对应的避障策略包括:在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略,动态障碍物的避障策略包括利用警告方式对动态障碍物进行警告驱离,不同动态障碍物对应不同的动态障碍物的避障策略,在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略,静态障碍物的避障策略包括利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示后利用对应的避障路径曲线进行避障,不同静态障碍物对应不同的静态障碍物的避障策略,其中,警告方式包括原地摆动,和/或声,和/或光的方式;利用确定的避障策略进行避障包括:基于动态障碍物的类型信息,利用对应的警告方式对动态障碍物进行警告驱离;基于静态障碍物的类型信息,利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示并利用对应的避障路径曲线进行避障。
其中,割草机器人获得障碍物的类型信息包括:割草机器人通过将拍摄得到的障碍物图像输入深度学习模型,进而识别得到障碍物的类型信息。
其中,确定静态障碍物或动态障碍物对应的避障策略之前包括:割草机器人基于自身的信息和障碍物的信息,生成障碍物的避障路径;利用确定的避障策略进行避障包括:在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略;利用确定的避障策略进行避障包括:利用静态障碍物的避障策略进行避障。
其中,割草机器人基于自身的信息和障碍物的信息,生成障碍物的避障路径包括:割草机器人基于自身的位置、路径点和尺寸信息和障碍物的尺寸、位置、距离和类型信息,生成障碍物的避障路径。
其中,割草机器人基于自身的位置、路径点和尺寸信息和障碍物的尺寸、位置、距离和类型信息,生成障碍物的避障路径包括:基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的扩展轮廓;响应于障碍物的距离小于预设距离,确定路径点位于障碍物内部的内点,以及确定割草机器人的位置和内点的连线与扩展轮廓的交点;以交点为起点沿着扩展轮廓进行搜索,直至扩展轮廓上的轮廓点与路径点上的目标点连线不与障碍物相交为止,确定相交时的轮廓点;将割草机器人的位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
其中,以交点为起点沿着扩展轮廓进行搜索,直至扩展轮廓上的轮廓点与路径点上的目标点连线不与障碍物相交为止,确定相交时的轮廓点包括:以交点为起点沿着扩展轮廓向两侧进行搜索,直至扩展轮廓上两侧的轮廓点与路径点上的目标点连线均不与障碍物相交为止,确定相交时的轮廓点。
其中,将割草机器人的位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径包括:将割草机器人的两侧连线部分中较短的连线部分的路径点作为新的路径点,并作为避障路径,连线部分为割草机器人的位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线。
其中,基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的扩展轮廓包括:基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的多边形形态的扩展轮廓;以交点为起点沿着扩展轮廓进行搜索,直至扩展轮廓上的轮廓点与路径点上的目标点连线不与障碍物相交为止,确定此时位置的轮廓点包括:以交点为起点沿着扩展轮廓的多边形顶点进行搜索,直至扩展轮廓上的顶点与路径点上的目标点连线不与障碍物相交为止,确定此时位置的顶点。
其中,基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的扩展轮廓包括:基于障碍物的尺寸、位置、类型信息确定障碍物的实际轮廓;将实际轮廓近似为多边形形态的实际轮廓,以多边形形态的实际轮廓为基础结合割草机器人的尺寸信息确定障碍物的多边形形态的扩展轮廓。
其中,利用确定的避障策略进行避障之后包括:获取割草机器人的避障评分,避障评分包括机器人自行评分和/或人工评分;基于避障评分对割草机器人的避障参数进行调整。
其中,避障评分包括动态障碍物避障评分和静态障碍物避障评分,基于避障评分对割草机器人的避障参数进行调整包括:响应于动态障碍物避障评分低于动态障碍物避障预设评分,调整动态障碍物对应的警告方式,以使动态障碍物避障评分不低于动态障碍物避障预设评分;响应于静态障碍物避障评分低于静态障碍物避障预设评分,调整静态障碍物对应的避障路径曲线和/或警告方式,以使静态障碍物避障评分不低于静态障碍物避障预设评分。
其中,避障评分包括执行距离评分、绕障距离评分、速度评分和角速度评分,基于避障评分对割草机器人的避障参数进行调整包括:响应于执行距离评分低于执行距离预设评分,调整割草机器人的执行距离以使执行距离评分不低于执行距离预设评分;响应于绕障距离评分低于绕障距离预设评分,调整割草机器人的绕障距离以使绕障距离评分不低于绕障距离预设评分;响应于速度评分低于速度预设评分,调整割草机器人的速度以使速度评分不低于速度预设评分;响应于角速度评分低于角速度预设评分,调整割草机器人的角速度以使角速度评分不低于速度预设评分;其中,执行距离为需要执行绕障策略时割草机器人与障碍物之间的距离,绕障距离为执行绕障策略过程中割草机器人与障碍物的最短距离。
其中,割草机器人获得障碍物的信息后包括:保存障碍物的信息;累计障碍物 的信息的保存时长;响应于保存时长大于预设时长,删除障碍物的信息。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种割草机器人,该割草机器人包括,机体;割草组件,安装于机体;信息采集组件,安装于机体并用于采集障碍物信息;控制器,安装于机体并用于控制机体配合信息采集组件,采用上述的方法进行避障。
本发明的有益效果是:区别于现有技术的情况,本发明的割草机器人通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相应的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。
附图说明
图1是本申请割草机器人的避障方法一实施方式的流程示意图;
图2是本申请割草机器人的避障方法一实施方式中深度强化学习的框架图;
图3是本申请割草机器人的避障方法另一实施方式中的流程示意图;
图4是本申请割草机器人的对避障静态障碍物避障的方法一实施方式的流程示意图;
图5a是本申请割草机器人的避障方法中一障碍物的扩展轮廓的示意图;
图5b是本申请割草机器人的避障方法中路径规划第一具体实施方式的示意图;
图5c是本申请割草机器人的避障方法中路径规划第二具体实施方式的示意图;
图5d是本申请割草机器人的避障方法中路径规划第三具体实施方式的示意图;
图6是申请割草机器人的避障方法又一实施方式中的流程示意图;
图7是本申请割草机器人的避障方法一具体实施方式的流程示意图;
图8是本申请割草机器人的结构示意图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。
避障是指移动机器人在行走过程中,通过传感器感知到在其规划路线上存在静态或动态障碍物时,按照一定的算法实时更新路径,绕过障碍物,最后达到目标点。移动机器人导航过程中的避障是机器人完成作业任务的关键技术之一。割草机器人在运行过程中,会遇到不同的障碍物,目前的避障算法主要有以下几类:Bug算法、势场法、模糊逻辑控制、基于栅格代价图的避障方法以及基于人工神经网络的智能算法。Bug算法是在发现障碍物后,围着检测到的障碍物轮廓行走,从而绕开它。Bug算法目前有很多变种,在许多简单的场景中,实现起来比较容易和方便,但其并没有考虑到机器人的动力学等限制,因此在更复杂的实际环境中不太稳定。人工势场避障控制法,仿照物理学中电势和电场力的概念,建立机器人工作空间中的虚拟势场,按照虚拟势场力方向,实现局部路径规划。势场法在理论上有诸多局限性,比如局部最小点问题,或者震荡性的问题。模糊逻辑控制法,不必创建可分析的环境模型,把知识和经验转化成规则,然后根据规则库的规则生成模糊控制输出。基于栅格代价图的避障是用启发式算法在单元中搜索安全路径,赋予每个栅格一个代价后,路径规划问题就变成在栅格网上寻求两个栅格节点间的最优路径问题。基于人工神经网络的避障是将外界环境信息输入训练后的神经网络,可以得到避障控制输出,神经网络是按照一定的拓扑结构相互连接而成的一种具有并行计算能力的网络系统,它具有较强的非线性拟合能力和多输入多输出同时处理的能力。传统的bug算法和势场法等在应对静态障碍物时能获得比较好的避障效果,在动态障碍物时,往往容易出现效率低甚至陷入局部最优的情况。基于栅格代价图的方法,往往需要有激光雷达等传感器用于获取感知信息,而环境中的杂草对传感器具有很大干扰。
而本申请提供一种割草机器人的避障方法,割草机器人通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相应的避障 策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。
请参阅图1,图1是本申请割草机器人的避障方法一实施方式的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施方式包括:
S110:割草机器人获得障碍物的信息。
当遇到障碍物时,割草机器人先利用自身的传感器对障碍物进行识别检测,获取障碍物的信息。
S130:基于障碍物的信息确定障碍物为静态障碍物或动态障碍物。
为不同类型的障碍物设定不同的避障策略,在本申请的实施方式中,根据障碍物的类型信息选择对应的避障策略,以对障碍物进行避障。在一实施方式中,将障碍物分为动态障碍物和静态障碍物,对两种障碍物采用不同的避障策略。进一步地,基于障碍物的信息确定障碍物为静态障碍物或动态障碍物。
S150:确定静态障碍物或动态障碍物对应的避障策略。
预先设置多种避障策略,当检测当前障碍物为动态障碍物时,利用动态障碍物的避障策略对当前障碍物进行避障,不同动态障碍物对应不同的动态障碍物的避障策略。当检测当前障碍物为静态障碍物时,利用静态障碍物的避障策略对当前障碍物进行避障。不同静态障碍物对应不同的静态障碍物的避障策略。
S170:利用确定的避障策略进行避障。
该实施方式中,本申请提供一种割草机器人的避障方法,割草机器人通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相应的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。
可选的,在本申请的割草机器人的避障方法中,设置有三个模块,分别为视觉超声融合感知模块、基于深度强化学习下的避障策略模块和避障规划模块。
移动机器人需要通过传感器实时获取自身周围障碍物信息,包括尺寸、形状和位置等信息。避障使用的传感器多种多样,各有不同的原理和特点,目前常见的主要有视觉传感器、激光传感器、红外传感器、超声波传感器等。在本申请的实施方式中,主要采用视觉传感器和超声传感器。
割草机器人上安装有视觉传感器和超声传感器,其中,视觉传感器为单目摄像头,在视觉超声融合感知模块采用视觉传感器和超声传感器融合方式获取环境和障碍物的信息,包括障碍物的类型信息、尺寸信息、位置信息和障碍物标签等。障碍物标签用于区别检测到的不同障碍物,不同障碍物对应有不同标签。当对同一个障碍物进行检测时,由于视觉传感器获取到的障碍物的信息的不确定性,同一个障碍物,前后两次测量和检测数据会有不同,可能导致系统误识别为两个不同的障碍物,因此,将检测到的障碍物信息暂存,根据障碍物的位置信息和障碍物标签,对障碍物进行预测,并对比当前检测的障碍物信息和暂存的历史障碍物信息,滤除重复障碍物,从而避免障碍物重影。再将障碍物信息以及获取该障碍物信息的时间信息保存到数据库中,用于输入避障策略模块进行避障策略规划。当障碍物离开视觉传感器的视野时采用时间窗口暂存障碍物信息。同时,累计障碍物信息的保存时长,当保存时长大于预设时长,则将障碍物信息从数据库中删除,避免由于时效问题导致误差较大。
基于深度强化学习下的避障策略模块对障碍物的信息进行处理,为障碍物规划避障策略。基于深度强化学习下的避障策略模块中包含一个避障控制模型,该模型是利用大量的实际和仿真数据训练得到的深度神经网络模型,请参阅图2,图2是本申请割草机器人的避障方法一实施方式中深度强化学习的框架图。深度强化学习框架主要包括状态空间、动作策略空间和奖励函数。状态空间用于存放机器人和障碍物的信息,其中,机器人的信息包括机器人的当前位置信息、姿态信息、尺寸信息和规划的预设轨迹信息等,障碍物的信息包括利用上述视觉超声融合感知模块获 取的障碍物的类型信息、尺寸信息和位置信息等。割草机器人获得障碍物的类型信息,基于障碍物的信息确定障碍物为静态障碍物或动态障碍物,在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略,动态障碍物的避障策略包括利用警告方式对动态障碍物进行警告驱离,不同动态障碍物可以对应不同的动态障碍物的避障策略。在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略,静态障碍物的避障策略包括利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示后利用对应的避障路径曲线进行避障,不同静态障碍物可以对应不同的静态障碍物的避障策略,基于静态障碍物的类型信息,利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示并利用对应的避障路径曲线进行避障。其中,警告方式包括原地摆动,和/或声,和/或光的方式。
利用动态障碍物的避障策略进行避障之后,确定障碍物是否移动;如果障碍物没有移动,则确定障碍物为静态障碍物;利用静态障碍物的避障策略进行避障。
动作策略空间用于存放割草机器人避障的策略,如避障声音类型、避障灯光类型、避障动作类型和避障曲线类型等。每种避障类型下提供多种可搭配的选择,以预先为可能遇到的障碍物设定一种避障策略或者结合多种避障策略。其中,避障声音类型包括提示语音,如常规语音、警告动物语音、提醒人语音等以及对应的声音大小。避障灯光类型可以是常亮、闪烁或跑马灯等以及对应的灯光颜色。避障动作类型可以是左右摇摆、前后摇摆或旋转等以及对应的动作速度。避障曲线类型可以是直线、样条函数曲线及其多种组合等以及对应的移动速度。
避障策略的生成过程可以是:将状态空间的障碍物信息和机器人信息、动作策略空间的避障策略信息输入训练好的避障控制模型中,输出对障碍物的避障策略,割草机器人根据输出的避障策略执行避障动作。
上述避障策略的生成过程可以利用奖励函数。奖励函数是用于根据外部和内部的评价对避障控制模型进行参数调整,以选择更优的避障策略进行输出。其中,可以采取评分策略的方式对避障控制模型提供意见反馈,评分策略分为机器人自行评分策略和人工评分策略。当割草机器人完成避障动作之后,割草机器人可以结合避障效果对避障过程中的避障参数进行评价打分,用户也可以根据割草机器人避障效果和自身的满意度对其避障参数进行评价打分,将打分结果反馈至避障控制模型中,避障控制模块对打分较低的避障参数进行学习,以为割草机器人输出更优的避障策略。
具体地,请参阅图3,图3是本申请割草机器人的避障方法另一实施方式中的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图3所示的流程顺序为限。如图3所示,本实施方式包括:
S310:割草机器人获得障碍物的信息。
割草机器人上安装有视觉传感器和超声传感器,其中,视觉传感器为单目摄像头,在视觉超声融合感知模块中,割草机器人结合视觉传感器和超声传感器获取障碍物的信息,
首先,割草机器人利用视觉传感器对障碍物进行拍摄,从摄像头获取障碍物的图像,将拍摄得到的障碍物图像输入训练好的深度学习模型,识别出障碍物的类型信息、尺寸信息和视觉位置信息并输出。
然后利用超声波传感器向障碍物发送超声波,获取障碍物的超声距离信息,再结合超声波传感器获取的超声距离信息对视觉传感器输出的视觉位置信息,得到障碍物的位置信息。一般地,若割草机器人在行进过程中,则当利用视觉传感器输出视觉位置信息时,障碍物与割草机器人的距离已发生变化,则障碍物想到割草机器人的视觉位置信息不准确,此时,利用超声波传感器再次获取障碍物的超声距离信息,利用超声距离信息作为此时障碍物的距离信息,将超声距离信息对视觉位置信息做进一步优化调整,能够消除视觉传感器的延时误差,得到障碍物的位置信息。而当超声波传感器没有检测到障碍物时,则直接将视觉传感器获取的视觉位置信息作为障碍物的位置信息。
在另一实施方式中,障碍物的信息包括障碍物的类型信息、尺寸信息、位置信息和障碍物标签等。障碍物标签用于区别检测到的不同障碍物,不同障碍物对应有不同标签。当对同一个障碍物进行检测时,由于视觉传感器获取到的障碍物的信息的不确定性,同一个障碍物,前后两次测量和检测数据会有不同,可能导致系统误识别为两个不同的障碍物,因此,将检测到的障碍物信息暂存,根据障碍物的位置信息和障碍物标签,对障碍物进行预测,并对比当前检测的障碍物信息和暂存的历史障碍物信息,滤除重复障碍物,从而避免障碍物重影。再将障碍物信息以及获取该障碍物信息的时间信息保存到数据库中,用于输入避障策略模块进行避障策略规划。当障碍物离开视觉传感器的视野时采用时间窗口暂存障碍物信息,累计障碍物信息的保存时长,当保存时长大于预设时长,则将障碍物信息从数据库中删除。
S320:基于障碍物的信息确定障碍物为静态障碍物或动态障碍物。
为不同类型的障碍物设定不同的避障策略,在本申请的实施方式中,根据障碍物的类型信息选择对应的避障策略,以对障碍物进行避障。在一实施方式中,将障碍物分为动态障碍物和静态障碍物,对两种障碍物采用不同的避障策略。
进一步地,基于障碍物的类型信息确定障碍物为静态障碍物或动态障碍物。在本申请的实施方式中,预先建立障碍物动态静态对应表,将常见障碍物的类型信息和其对应的静态障碍物或动态障碍物作为障碍物动态静态对应表。根据障碍物的类型信息查找障碍物动态静态对应表,判断障碍物为静态障碍物或动态障碍物。
S330:在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略。
当检测当前障碍物为动态障碍物时,利用动态障碍物的避障策略对当前障碍物进行避障,不同动态障碍物对应不同的动态障碍物的避障策略。其中,动态障碍物的避障策略包括利用警告方式对动态障碍物进行警告驱离,警告方式包括避障动作,和/或声,和/或光的方式。
S340:利用动态障碍物的避障策略进行避障。
对于动态障碍物而言,因障碍物可能会移动,难以规划路径,首先利用警告方式对动态障碍物进行警告驱离。具体地,利用避障动作进行警告驱离时,根据动态障碍物的类型选择最能引起该动态障碍物的注意的避障动作,如原地摆动,包括但不限于左右摇摆、前后摇摆,旋转等动作,并为不同的动态障碍物调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景,如警告动物和警告人时采用不同的声音。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并根据动态障碍物的类型选择最能引起该动态障碍物的注意的灯光颜色。在本申请的实施方式中,提供的动态障碍物的避障策略中可能包含一种或多种警告方式,如在一具体实施方式中,对一动态障碍物在左右摆动的同时亮跑马灯。此步骤之后进行步骤S370。
S350:在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略。
此步骤与步骤S330并列,与步骤S330一样均是步骤S320后的择一性分支。当检测当前障碍物为静态障碍物时,利用静态障碍物的避障策略对当前障碍物进行避障。不同静态障碍物对应不同的静态障碍物的避障策略,其中,静态障碍物的避障策略可以是利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示并利用对应的避障路径曲线进行避障,警告方式可以是避障动作,和/或声,和/或光的方式。
S360:利用静态障碍物的避障策略进行避障。
对于静态障碍物而言,障碍物不移动,便于规划路径,可以直接采用避障曲线进行绕障,也可以在绕障的同时进行警告,以显示当前割草机器人正在进行避障。割草机器人基于自身的信息和障碍物的信息,生成障碍物的避障路径。具体地,利用避障动作进行警告驱离时,选择避障动作,如原地摆动,可以是左右摇摆、前后 摇摆或旋转等动作,并可以调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并选择不同的灯光颜色。当采用避障曲线进行绕障时,避障曲线可以是多条直线的组合、拟合多条平滑曲线的组合、直线和平滑曲线的组合等,割草机器人采用规划好的避障曲线对应的避障路径移动,以进行绕障。
在一具体实施方式中,在确定为静态障碍物的情况下,利用静态障碍物的避障策略进行避障,静态避障策略可以是利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示之后利用对应的避障路径曲线进行避障。避障路径选择多条直线的组合,割草机器人基于机器人自身的信息和障碍物的信息,即基于自身的位置、路径点和尺寸信息和障碍物的尺寸、位置、距离和类型信息,生成静态障碍物的避障路径。其中,路径点为割草机器人在行走的避障路径上的点集。请参阅图4,图4是本申请割草机器人的对避障静态障碍物避障的方法一实施方式的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图4所示的流程顺序为限。如图4所示,本实施方式包括:
S410:基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的扩展轮廓。
基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的多边形形态的扩展轮廓,一般地,将实际轮廓近似为多边形形态的实际轮廓,以多边形形态的实际轮廓为基础结合割草机器人的尺寸信息确定障碍物的多边形形态的扩展轮廓。
利用障碍物的位置信息得到障碍物的定位坐标,将障碍物的定位坐标与其类型信息和尺寸信息确定其实际轮廓。为方便割草机器人可以沿着障碍物的实际轮廓进行避障,减少避障过程中的路径长度,将障碍物的实际轮廓向外侧扩展,得到扩展轮廓。该扩展轮廓中有一部分会作为新规划的避障路径,即割草机器人会在该避障路径上行走,因此扩展轮廓的大小会影响割草机器人的行走路径长度以及割草机器人在避障过程中是否会与障碍物相撞。因此,在该实施方式中,预先获取割草机器人的尺寸信息,利用割草机器人的尺寸信息确定扩展轮廓的扩展范围,以使割草机器人在扩展轮廓上行走时不会与障碍物相撞。在该实施方式中,实际轮廓可以为多种形态,如圆形、多边形等,但圆形对于割草机器人的行走要求高且坐标获取难度高,同时,在之后的路径规划过程中,圆形不便于寻找新的路径上的节点,因此,一般地,为方便获取实际轮廓的坐标,将障碍物的实际轮廓近似为多边形,以多边形形态的实际轮廓为基础结合割草机器人的尺寸信息向外扩展一定距离形成一个更大的多边形,将更大的多边形作为障碍物的多边形形态的扩展轮廓。多边形具有多个顶点和边,当割草机器人在多边形的扩展轮廓上行走时,在多边形的边上以直线行走,在顶点处转换方向,提高避障效率。在一具体实施方式中,请参阅图5a,图5a是本申请割草机器人的避障方法中一障碍物的扩展轮廓的示意图。将障碍物的轮廓近似为四边形,并将障碍物的轮廓向外扩展行程一个更大的四边形,得到扩展轮廓,即膨胀层。
S430:利用扩展轮廓搜索路径点,得到规划路径。
利用障碍物的位置信息获取割草机器人和障碍物之间的距离,当距离小于预设距离,则利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示之后利用对应的避障路径曲线进行避障。
如果障碍物的距离小于预设距离,确定路径点位于障碍物内部的内点,以及确定割草机器人的位置和内点的连线与扩展轮廓的交点;割草机器人沿当前的路径继续向前检测,将离开障碍物内部的点作为路径点上的目标点。以交点为起点沿着扩展轮廓进行搜索,直至扩展轮廓上的轮廓点与路径点上的目标点连线不与障碍物相交为止,确定相交时的轮廓点;将割草机器人的位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
请参阅图5b,图5b是本申请割草机器人的避障方法中路径规划第一具体实施方式的示意图。如图5b所示,曲线A-B为割草机器人的当前路径,其中,A点为割草机器人的当前所在位置,B点为目标点。当前路径与障碍物的实际轮廓的交点为C点和D点。在一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的一个位于障碍物内部的点作为内点,在图5b中,曲线A-B上得在C点和D点之间的点均为内点,选择E点作为内点,将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点为F点。将该交点F点作为起点,沿着扩展轮廓进行路径点的搜索,直至扩展轮廓上的点与路径点上的目标点连线不与障碍物相交为止,确定相交时的点作为轮廓点,如搜索到扩展轮廓上的a点,a点与目标点B点连线不与障碍物相交,确定a点为轮廓点;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径,即将A-F-a-B的连线作为避障路径。
请参阅图5c,图5c是本申请割草机器人的避障方法中路径规划第二具体实施方式的示意图。在一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,在图5b中,曲线A-B上得在C点和D点之间的点均为内点,选择C点作为内点,将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点为G点。将该交点G点作为起点,沿着扩展轮廓进行路径点的搜索,直至扩展轮廓上的点与路径点上的目标点连线不与障碍物相交为止,确定相交时的点作为轮廓点,如搜索到扩展轮廓上的b点,b点与目标点B点连线不与障碍物相交,确定b点为轮廓点;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径,即将A-G-b-B的连线作为避障路径。
请参阅图5d,图5d是本申请割草机器人的避障方法中路径规划第三具体实施方式的示意图。在另一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,在图5d中,曲线A-B上得在C点和D点之间的点均为内点,选择C点作为内点。将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓向两侧进行搜索,直至扩展轮廓两侧上的点与路径点上的目标点连线均不与障碍物相交为止,将割草机器人的两侧连线部分中较短的连线部分的路径点作为新的路径点,并作为避障路径,连线部分为割草机器人的位置至交点、交点至所述轮廓点的扩展轮廓部分、以及轮廓点至所述目标点的连线;割草机器人从G点分别想扩展轮廓的两侧进行搜索,分别搜索到扩展轮廓上的c点和d点,c点、d点均与目标点B点连线不与障碍物相交,则分别判断A-G-c-B的连线和A-G-d-B的连线中较短的联系,其中,A-G-c-B的连线较短。将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径,即将A-G-c-B的连线作为避障路径。
在该实施方式中,将障碍物近似为多边形,并为障碍物设定膨胀层,沿着膨胀层搜索避障路径,避免割草机器人在避障过程中与障碍物相撞的同时能够方便快捷得到避障路径。
S370:获取割草机器人的避障评分,基于避障评分对割草机器人的避障参数进行调整。
由割草机器人自身进行避障评分,或者用户进行直接人工评分,或者将割草机器人评分和人工评分相结合,基于避障评分,对割草机器人在整个避障规划过程中的参数进行调整,以使割草机器人的避障精度更高。
其中,可以对静态障碍物和动态障碍物的避障效果进行直接评分,也可以对警告方式的参数,如可以是对避障声音类型、避障灯光类型、避障动作类型和避障曲线类型的评分,或者声音大小、灯光颜色、警告方式的组合等进行直接评分。还可 以对避障过程中使用的具体避障参数进行评分,如割草机器人需要执行绕障策略时割草机器人与障碍物之间的执行距离,割草机器人执行绕障策略过程中割草机器人与障碍物的最短距离,割草机器人避障时的行走速度和角速度,实际轮廓曲线和膨胀层曲线形态等。
在一实施方式中,避障评分可以是避障策略的组合方式,对多种避障声音类型、避障灯光类型、避障动作类型或避障曲线类型的组合进行评分,当组合评分低于组合预设评分时,调整各个避障类型的组合,以使得组合评分不低于组合预设评分。
在另一实施方式中,避障评分可以是动态障碍物避障评分和静态障碍物避障评分,当动态障碍物避障评分低于动态障碍物避障预设评分时,对动态障碍物对应的警告方式进行调整,以使得动态障碍物避障评分不低于动态障碍物避障预设评分;当静态障碍物避障评分低于静态障碍物避障预设评分时,对静态障碍物对应的避障路径曲线和/或警告方式进行调整,以使静态障碍物避障评分不低于静态障碍物避障预设评分。
在另一实施方式中,避障评分可以是执行距离评分、绕障距离评分,其中,绕障距离评分为割草机器人执行绕障策略过程中割草机器人与障碍物的最短距离。当执行距离评分低于执行距离预设评分时,对割草机器人的执行距离进行调整,以使执行距离评分不低于执行距离预设评分;当绕障距离评分低于绕障距离预设评分时,对割草机器人的绕障距离进行调整,以使绕障距离评分不低于绕障距离预设评分。
在另一实施方式中,避障评分可以是速度评分和角速度评分,当速度评分低于速度预设评分时,对割草机器人的速度进行调整,以使速度评分不低于速度预设评分;当角速度评分低于角速度预设评分时,对割草机器人的角速度进行调整,以使角速度评分不低于速度预设评分。
在另一实施方式中,避障评分可以是实际轮廓曲线和膨胀层曲线形态等,当实际轮廓曲线评分低于实际轮廓曲线预设评分时,对割草机器人的实际轮廓曲线进行调整,以使速度评分不低于速度预设评分,具体调整方法可以包括改变轮廓曲线的角度和/或改变轮廓曲线的多边形边数和/或改变轮廓曲线的多边形的边长等;当膨胀层曲线形态评分低于膨胀层曲线形态预设评分时,对割草机器人的膨胀层曲线形态进行调整,以使膨胀层曲线形态评分不低于膨胀层曲线形态预设评分,具体调整方法可以是改变膨胀层曲线的角度和/或改变膨胀层曲线的多边形边数和/或改变膨胀层曲线的多边形的边长等。
在另一实施方式中,避障评分可以是声音类型评分和声音大小评分,当声音类型评分低于声音类型预设评分时,对割草机器人的声音类型进行调整,以使声音类型评分不低于声音类型预设评分;当声音大小评分低于声音大小预设评分时,对割草机器人的声音大小进行调整,以使声音大小评分不低于速度预设评分。
该实施方式中,本发明的割草机器人安装有采用相对低成本的传感器,单目摄像头和超声传感器,并通过融合感知检测障碍物,能有效提高障碍物检测稳定性和测量精度。对障碍物进行分类,不同类型的障碍物采用不同的避障策略,通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相对应的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。同时,设置强化学习决策模块,在使用过程中在线学习,可以在线调整避障策略以及调整多个避障参数,让用户可以根据实际使用环境自主调整避障模式,以优化避障性能。
具体地,请参阅图6,图6是申请割草机器人的避障方法又一实施方式中的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图6所示的流程顺序为限。如图6所示,本实施方式包括:
S610:割草机器人获得障碍物的信息。
割草机器人上安装有视觉传感器和超声传感器,其中,视觉传感器为单目摄像头,在视觉超声融合感知模块中,割草机器人结合视觉传感器和超声传感器获取障碍物的信息,
首先,割草机器人利用视觉传感器对障碍物进行拍摄,从摄像头获取障碍物的图像,将拍摄得到的障碍物图像输入训练好的深度学习模型,识别出障碍物的类型信息、尺寸信息和视觉位置信息并输出。
然后利用超声波传感器向障碍物发送超声波,获取障碍物的超声距离信息,再结合超声波传感器获取的超声距离信息对视觉传感器输出的视觉位置信息,得到障碍物的位置信息。一般地,若割草机器人在行进过程中,则当利用视觉传感器输出视觉位置信息时,障碍物与割草机器人的距离已发生变化,则障碍物想到割草机器人的视觉位置信息不准确,此时,利用超声波传感器再次获取障碍物的超声距离信息,利用超声距离信息作为此时障碍物的距离信息,将超声距离信息对视觉位置信息做进一步优化调整,消除了视觉传感器的延时误差,得到障碍物的位置信息。而当超声波传感器没有检测到障碍物时,则直接将视觉传感器获取的视觉位置信息作为障碍物的位置信息。
S620:基于障碍物的信息确定障碍物为静态障碍物或动态障碍物。
为不同类型的障碍物设定不同的避障策略,在本申请的实施方式中,根据障碍物的类型信息选择对应的避障策略,以对障碍物进行避障。在一实施方式中,将障碍物分为动态障碍物和静态障碍物,对两种障碍物采用不同的避障策略。
进一步地,基于障碍物的类型信息确定障碍物为静态障碍物或动态障碍物。在本申请的实施方式中,预先建立障碍物动态静态对应表,将常见障碍物的类型信息和其对应的静态障碍物或动态障碍物作为障碍物动态静态对应表。根据障碍物的类型信息查找障碍物动态静态对应表,判断障碍物为静态障碍物或动态障碍物。
S630:在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略。
当检测当前障碍物为动态障碍物时,利用动态障碍物的避障策略对当前障碍物进行避障,不同动态障碍物对应不同的动态障碍物的避障策略。其中,动态障碍物的避障策略包括利用警告方式对动态障碍物进行警告驱离,警告方式可以是避障动作,和/或声,和/或光的方式。
S640:利用动态障碍物的避障策略进行避障。
对于动态障碍物而言,因障碍物可能会移动,难以规划路径,首先利用警告方式对动态障碍物进行警告驱离。具体地,利用避障动作进行警告驱离时,根据动态障碍物的类型选择最能引起该动态障碍物的注意的避障动作,如原地摆动,可以是左右摇摆、前后摇摆或旋转等动作,并为不同的动态障碍物调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景,如警告动物和警告人时采用不同的声音。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并根据动态障碍物的类型选择最能引起该动态障碍物的注意的灯光颜色。在本申请的实施方式中,提供的动态障碍物的避障策略中可能包含一种或多种警告方式,如在一具体实施方式中,对一动态障碍物在左右摆动的同时亮跑马灯。
对动态障碍物持续一定时间的警告驱离之后,再次对该障碍物进行检测,判断障碍物是否有移动;如果障碍物离开当前视线,则恢复当前的预设任务;如果障碍物未移动,则将该障碍物认定为静态障碍物,利用静态障碍物的避障策略进行避障。
S650:利用静态障碍物的避障策略进行避障。
当检测当前障碍物为静态障碍物时,利用静态障碍物的避障策略对当前障碍物进行避障。不同静态障碍物对应不同的静态障碍物的避障策略,其中,静态障碍物的避障策略包括利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示并利用对应的避障路径曲线进行避障,警告方式可以是避障动作,和/或声,和/或光的方式。
对于静态障碍物而言,障碍物不移动,便于规划路径,可以直接采用避障曲线进行绕障,也可以在绕障的同时进行警告,以显示当前割草机器人正在进行避障。 割草机器人基于自身的信息和障碍物的信息,生成障碍物的避障路径。具体地,利用避障动作进行警告驱离时,选择避障动作,如原地摆动,可以是左右摇摆、前后摇摆或旋转等动作,并可以调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并选择不同的灯光颜色。当采用避障曲线进行绕障时,避障曲线可以是多条直线的组合、拟合多条平滑曲线的组合、直线和平滑曲线的组合等,割草机器人采用规划好的避障曲线对应的避障路径移动,以进行绕障。
S660:获取割草机器人的避障评分,基于避障评分对割草机器人的避障参数进行调整。
由割草机器人自身进行避障评分,或者用户进行直接人工评分,或者将割草机器人评分和人工评分相结合,基于避障评分,对割草机器人在整个避障规划过程中的参数进行调整,以使割草机器人的避障精度更高。
在该实施方式中,本发明的割草机器人安装有采用相对低成本的传感器,单目摄像头和超声传感器,并通过融合感知检测障碍物,能有效提高障碍物检测稳定性和测量精度。对障碍物进行分类,不同类型的障碍物采用相应的避障策略,通过对障碍物的动静态进行识别,根据预先设定的避障策略,对于动态障碍物选择动态障碍物的避障策略,当动态障碍物不运动时,使用静态障碍物的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。同时,设置强化学习决策模块,在使用过程中在线学习,可以在线调整避障策略以及调整多个避障参数,让用户可以根据实际使用环境自主调整避障模式,以优化避障性能。
请参阅图7,图7是本申请实施方式中割草机器人的具体避障方法的流程示意图。
割草机器人利用视觉超声融合感知模块检测障碍物。割草机器人上安装有视觉传感器和超声传感器,其中,视觉传感器为单目摄像头,在视觉超声融合感知模块中,割草机器人结合视觉传感器和超声传感器获取障碍物的信息,障碍物的信息包括障碍物的类型信息、尺寸信息和位置信息。首先,割草机器人利用视觉传感器对障碍物进行拍摄,从摄像头获取障碍物的图像,将拍摄得到的障碍物图像输入训练好的深度学习模型,识别出障碍物的类型信息、尺寸信息和视觉位置信息并输出。然后利用超声波传感器向障碍物发送超声波,获取障碍物的超声距离信息,再结合超声波传感器获取的超声距离信息对视觉传感器输出的视觉位置信息,得到障碍物的位置信息。一般地,若割草机器人在行进过程中,则当利用视觉传感器输出视觉位置信息时,障碍物与割草机器人的距离已发生变化,则障碍物想到割草机器人的视觉位置信息不准确,此时,利用超声波传感器再次获取障碍物的超声距离信息,利用超声距离信息作为此时障碍物的距离信息,将超声距离信息对视觉位置信息做进一步优化调整,消除了视觉传感器的延时误差,得到障碍物的位置信息。而当超声波传感器没有检测到障碍物时,则直接将视觉传感器获取的视觉位置信息作为障碍物的位置信息。
在另一实施方式中,障碍物的信息包括障碍物的类型信息、尺寸信息、位置信息和障碍物标签等。障碍物标签用于区别检测到的不同障碍物,不同障碍物对应有不同标签。当对同一个障碍物进行检测时,由于视觉传感器获取到的障碍物的信息的不确定性,同一个障碍物,前后两次测量和检测数据会有不同,可能导致系统误识别为两个不同的障碍物,因此,将检测到的障碍物信息暂存,根据障碍物的位置信息和障碍物标签,对障碍物进行预测,并对比当前检测的障碍物信息和暂存的历史障碍物信息,滤除重复障碍物,从而避免障碍物重影。再将障碍物信息以及获取该障碍物信息的时间信息保存到数据库中,用于输入避障策略模块进行避障策略规划。当障碍物离开视觉传感器的视野时采用时间窗口暂存障碍物信息,累计障碍物信息的保存时长,当保存时长大于预设时长,则将障碍物信息从数据库中删除。
将障碍物的信息送入深度强化学习模块中进行决策,基于深度强化学习下的避 障策略模块对障碍物的信息进行处理,为障碍物规划避障策略。基于深度强化学习下的避障策略模块中包含一个避障控制模型,该模型是利用大量的实际和仿真数据训练得到的深度神经网络模型,对输入的障碍物信息进行分类,并为不同类型的障碍物设定不同的避障策略,在本申请的实施方式中,根据障碍物的类型信息选择对应的避障策略,以对障碍物进行避障。在一实施方式中,将障碍物分为动态障碍物和静态障碍物,对两种障碍物采用不同的避障策略。进一步地,基于障碍物的类型信息确定障碍物为静态障碍物或动态障碍物。在本申请的实施方式中,预先建立障碍物动态静态对应表,将常见障碍物的类型信息和其对应的静态障碍物或动态障碍物作为障碍物动态静态对应表。根据障碍物的类型信息查找障碍物动态静态对应表,判断障碍物为静态障碍物或动态障碍物。
判断输出的决策是否需要绕障。根据上述分类结果判断对于该障碍物的避障是否需要绕障。在一实施方式中,将障碍物当检测当前障碍物为动态障碍物时,利用动态障碍物的避障策略对当前障碍物进行避障,不同动态障碍物对应不同的动态障碍物的避障策略。对于动态障碍物而言,因障碍物可能会移动,难以规划路径,则不需要进行绕障。
若不需要绕障,则利用语音、灯光、机器人动作等方式进行驱离警告;具体地,利用避障动作进行警告驱离时,根据动态障碍物的类型选择最能引起该动态障碍物的注意的避障动作,如原地摆动,可以是左右摇摆、前后摇摆或旋转等动作,并为不同的动态障碍物调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景,如警告动物和警告人时采用不同的声音。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并根据动态障碍物的类型选择最能引起该动态障碍物的注意的灯光颜色。在本申请的实施方式中,提供的动态障碍物的避障策略中可能包含一种或多种警告方式,如在一具体实施方式中,对一动态障碍物在左右摆动的同时亮跑马灯。
当对动态障碍物持续一定时间的警告驱离之后,再次对该障碍物进行检测,判断障碍物是否有移动;如果障碍物未移动,则将该障碍物认定为静态障碍物,则需要进行绕障。
同样地,对于静态障碍物而言,障碍物不移动,便于规划路径,则需要进行绕障。可以直接采用避障曲线进行绕障,也可以在绕障的同时进行警告,以显示当前割草机器人正在进行避障。
此时若需要进行绕障,则利用上述方法开始规划避障路径。具体地,在确定为静态障碍物的情况下,利用静态障碍物的避障策略进行避障,静态避障策略为利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示之后利用对应的避障路径曲线进行避障。利用避障动作进行警告驱离时,选择避障动作,如原地摆动,可以是左右摇摆、前后摇摆或旋转等动作,并可以调整摆动的速度。利用声的方式进行警告驱离时,预先生成多种不同的避障声音以应对不同的避障场景。利用光的方式进行警告驱离时,主要利用安装在机器人上得LED灯,预先为LED灯设置不同的颜色,以及亮灯方式,如常亮、闪烁或跑马灯等,并选择不同的灯光颜色。当采用避障曲线进行绕障时,避障曲线可以是多条直线的组合、拟合多条平滑曲线的组合、直线和平滑曲线的组合等,割草机器人采用规划好的避障曲线对应的避障路径移动,以进行绕障。
其中,避障路径选择多条直线的组合,割草机器人基于机器人自身的信息和障碍物的信息,即基于自身的位置、路径点和尺寸信息和障碍物的尺寸、位置、距离和类型信息,生成静态障碍物的避障路径。路径点为割草机器人在行走的避障路径上的点集。
基于障碍物的尺寸、位置、类型信息以及割草机器人的尺寸信息确定障碍物的多边形形态的扩展轮廓,一般地,将实际轮廓近似为多边形形态的实际轮廓,以多边形形态的实际轮廓为基础结合割草机器人的尺寸信息确定障碍物的多边形形态的 扩展轮廓。
其中,首先利用障碍物的位置信息得到障碍物的定位坐标,将障碍物的定位坐标与其类型信息和尺寸信息确定其实际轮廓。将障碍物的实际轮廓向外侧扩展,得到扩展轮廓。在该实施方式中,预先获取割草机器人的尺寸信息,利用割草机器人的尺寸信息确定扩展轮廓的扩展范围,以使割草机器人在扩展轮廓上行走时不会与障碍物相撞。一般地,为方便获取实际轮廓的坐标,将障碍物的实际轮廓近似为多边形,以多边形形态的实际轮廓为基础结合割草机器人的尺寸信息向外扩展一定距离形成一个更大的多边形,将更大的多边形作为障碍物的多边形形态的扩展轮廓。
利用障碍物的位置信息获取割草机器人和障碍物之间的距离,当距离小于预设距离,则利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示之后利用对应的避障路径曲线进行避障。
如果障碍物的距离小于预设距离,确定路径点位于障碍物内部的内点,以及确定割草机器人的位置和内点的连线与扩展轮廓的交点;以交点为起点沿着扩展轮廓进行搜索,直至扩展轮廓上的轮廓点与路径点上的目标点连线不与障碍物相交为止,确定相交时的轮廓点;将割草机器人的位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
在一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的一个位于障碍物内部的点作为内点,割草机器人沿当前的路径继续向前检测,将离开障碍物内部的点作为路径点上的目标点。将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓进行路径点的搜索,直至扩展轮廓上的点与路径点上的目标点连线不与障碍物相交为止,确定相交时的点作为轮廓点;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
在一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,割草机器人沿当前的路径继续向前检测,将离开障碍物内部的点作为路径点上的目标点。将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓进行路径点的搜索,直至扩展轮廓上的点与路径点上的目标点连线不与障碍物相交为止,确定相交时的点作为轮廓点;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
在另一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,割草机器人沿当前的路径继续向前检测,将离开障碍物内部的点作为路径点上的目标点。将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓向两侧进行搜索,直至扩展轮廓两侧上的点与路径点上的目标点连线均不与障碍物相交为止,将割草机器人的两侧连线部分中较短的连线部分的路径点作为新的路径点,并作为避障路径,连线部分为割草机器人的位置至交点、交点至所述轮廓点的扩展轮廓部分、以及轮廓点至所述目标点的连线;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
在另一实施方式中,割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,割草机器人沿当前的路径继续向前检测,将离开障碍物内部的点作为路径点上的目标点。将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓向两侧进行搜索,直至扩展轮廓两侧上的点与路径点上的目标点连线均不与障碍物相交为止,将割草机器人的两侧连线部分中较短的连线部分的路径点作为新的路径点,并作为避障路径,连线部分为割草机器人的位置 至交点、交点至所述轮廓点的扩展轮廓部分、以及轮廓点至所述目标点的连线;将割草机器人的自身位置至交点、交点至轮廓点的扩展轮廓部分、以及轮廓点至目标点的连线部分作为新的路径点,并作为避障路径。
在一实施方式中,将割草机器人当前的路径割草机器人沿当前规划路径向前检测,检测是否存在路径点为位于障碍物内部的点,并将检测到的第一个位于障碍物内部的点作为内点,将割草机器人的自身位置和内点进行连线,确定连线与扩展轮廓的交点。将该交点作为起点,沿着扩展轮廓向两侧进行搜索,得到避障路径。
判断避障路径是否规划成功,若失败,则通知用户,并等待用户安排的下一步任务或者继续利用视觉超声融合感知模块检测障碍物,若成功,则开始避障。在避障过程中判断是否完成避障任务,若完成避障任务则结束避障,进行正常作业模式或者继续当前设定的任务;若没有完成避障任务,则继续利用视觉超声融合感知模块检测障碍物。
在避障过程中,用户可以随时将评价输入深度强化学习模块中,以进行随时调整避障参数。具体地,可以对静态障碍物和动态障碍物的避障效果进行直接评分,也可以对警告方式的参数,如具体的避障声音类型、避障灯光类型、避障动作类型和避障曲线类型的评分,以及声音大小,灯光颜色,警告方式的组合等,进行直接评分。还可以对避障过程中使用的具体避障参数进行评分,如割草机器人需要执行绕障策略时割草机器人与障碍物之间的执行距离,割草机器人执行绕障策略过程中割草机器人与障碍物的最短距离,割草机器人避障时的行走速度和角速度等。
在一实施方式中,避障评分包括避障策略的组合方式,对多种避障声音类型、避障灯光类型、避障动作类型和避障曲线类型的组合进行评分,当避障策略的组合方式不合适时,不能及时地提醒警示障碍物离开,因此,当组合评分低于组合预设评分时,调整各个避障类型的组合,以使得避障策略的组合方式更优,即组合评分不低于组合预设评分。
在另一实施方式中,避障评分可以是动态障碍物避障评分和静态障碍物避障评分,当动态障碍物避障评分低于动态障碍物避障预设评分时,对动态障碍物对应的警告方式进行调整,以使得动态障碍物避障评分不低于动态障碍物避障预设评分;当静态障碍物避障评分低于静态障碍物避障预设评分时,对静态障碍物对应的避障路径曲线和/或警告方式进行调整,以使静态障碍物避障评分不低于静态障碍物避障预设评分。
在另一实施方式中,避障评分可以是执行距离评分和绕障距离评分,其中,绕障距离评分为割草机器人执行绕障策略过程中割草机器人与障碍物的最短距离。当执行距离过远时,割草机器人的运行目标点可能在路径规划过程中调整,或者可能在路径规划过程中出现新的障碍物,使得路径规划失败。而当执行距离过近时,可能不能够及时调整路径变化,使得在路径规划过程中与障碍物相撞。因此,当执行距离评分低于执行距离预设评分时,对割草机器人的执行距离进行调整,以使执行距离评分不低于执行距离预设评分;当绕障距离过远时,割草机器人规划的路径较远,避障所需时间较长,降低避障效率。而当绕障距离过近时,割草机器人在避障过程中容易与障碍物相撞。因此当绕障距离评分低于绕障距离预设评分时,对割草机器人的绕障距离进行调整,以使绕障距离评分不低于绕障距离预设评分。
在另一实施方式中,避障评分可以是速度评分和角速度评分,当速度评分低于速度预设评分时,对割草机器人的速度进行调整,以使速度评分不低于速度预设评分;当角速度评分低于角速度预设评分时,对割草机器人的角速度进行调整,以使角速度评分不低于速度预设评分。
在另一实施方式中,避障评分可以是实际轮廓曲线和膨胀层曲线形态等,对障碍物设定的实际轮廓曲线会影响膨胀层曲线的形态,当实际轮廓曲线评分低于实际轮廓曲线预设评分时,对割草机器人的实际轮廓曲线进行调整,以使速度评分不低于速度预设评分,具体调整方法可以包括改变轮廓曲线的角度和/或改变轮廓曲线的多边形边数和/或改变轮廓曲线的多边形的边长等;膨胀层曲线形态会影响割草机器 人避障路径,当膨胀层曲线过于曲折时,会增加割草机器人避障的难度,降低避障效率,当膨胀层曲线形态评分低于膨胀层曲线形态预设评分时,对割草机器人的膨胀层曲线形态进行调整,以使膨胀层曲线形态评分不低于膨胀层曲线形态预设评分,具体调整方法可以包括改变膨胀层曲线的角度和/或改变膨胀层曲线的多边形边数和/或改变膨胀层曲线的多边形的边长等。
在另一实施方式中,避障评分可以是声音类型评分和声音大小评分,避障方式中会使用声音提醒驱离动态障碍物,对应不同障碍物,相应的避障声音类型不合适会达不到驱离效果,因此,当声音类型评分低于声音类型预设评分时,对割草机器人的声音类型进行调整,以使声音类型评分不低于声音类型预设评分;当避障提醒的声音过小时,不能达到驱离效果,而当声音过大时,则会产生噪音干扰,因此当声音大小评分低于声音大小预设评分时,对割草机器人的声音大小进行调整,以使声音大小评分不低于速度预设评分。
同时,割草机器人会实时判断障碍物的信息,如果出现新的障碍物,则重复该实施方式的步骤。
在该实施方式中,本发明的割草机器人安装有采用相对低成本的传感器,单目摄像头和超声传感器,并通过融合感知检测障碍物,能有效提高障碍物检测稳定性和测量精度。对障碍物进行分类,不同类型的障碍物采用不同的避障策略,通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相应的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。同时,设置强化学习决策模块,在使用过程中在线学习,可以在线调整避障策略以及调整多个避障参数,让用户可以根据实际使用环境自主调整避障模式,以优化避障性能。
请参阅图8,图8是本申请实施方式中割草机器人的结构示意图。该实施方式中,割草机器人包括机体81、割草组件82、信息采集组件83和控制器84。
其中,割草组件82安装于机体;信息采集组件83安装于机体并用于采集障碍物信息;控制器84安装于机体并用于控制机体配合信息采集组件,采用上述的割草机器人的避障方法进行避障。本申请利用割草机器人通过对障碍物的动静态进行识别,根据预先设定的避障策略,为动态障碍物和静态障碍物选择相应的避障策略,使割草机器人能够应对实际应用中动静态障碍物不同的避障需求,有效提高避障效率。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (17)

  1. 一种割草机器人的避障方法,其特征在于,所述方法包括:
    割草机器人获得障碍物的信息;
    基于所述障碍物的信息确定所述障碍物为静态障碍物或动态障碍物;
    确定所述静态障碍物或所述动态障碍物对应的避障策略;
    利用所述确定的所述避障策略进行避障。
  2. 根据权利要求1所述的割草机器人的避障方法,其特征在于,
    所述确定所述静态障碍物或所述动态障碍物对应的避障策略包括:
    在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略;
    所述利用所述确定的所述避障策略进行避障包括:
    利用声和/或光的方式进行警告驱离。
  3. 根据权利要求2所述的割草机器人的避障方法,其特征在于,
    所述利用所述动态障碍物的避障策略进行避障之后包括:
    确定所述障碍物是否移动;
    响应于所述障碍物未移动,确定所述障碍物为静态障碍物;
    利用所述静态障碍物的避障策略进行避障。
  4. 根据权利要求1所述的割草机器人的避障方法,其特征在于,
    所述割草机器人获得障碍物的信息包括:
    所述割草机器人获得障碍物的类型信息;
    所述基于所述障碍物的信息确定所述障碍物为静态障碍物或动态障碍物包括:
    基于所述障碍物的类型信息确定所述障碍物为静态障碍物或动态障碍物;
    确定所述静态障碍物或所述动态障碍物对应的避障策略包括:
    在确定为动态障碍物的情况下确定当前的避障策略为动态障碍物的避障策略,所述动态障碍物的避障策略包括利用警告方式对所述动态障碍物进行警告驱离,不同所述动态障碍物对应不同的动态障碍物的避障策略,在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略,所述静态障碍物的避障策略包括利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示后利用对应的避障路径曲线进行避障,不同所述静态障碍物对应不同的静态障碍物的避障策略,其中,所述警告方式包括原地摆动,和/或声,和/或光的方式;
    所述利用所述确定的所述避障策略进行避障包括:
    基于所述动态障碍物的类型信息,利用对应的警告方式对所述动态障碍物进行警告驱离;基于静态障碍物的类型信息,利用对应的避障路径曲线进行避障,或利用对应的警告方式进行提示并利用对应的避障路径曲线进行避障。
  5. 根据权利要求4所述的割草机器人的避障方法,其特征在于,
    所述割草机器人获得障碍物的类型信息包括:
    所述割草机器人通过将拍摄得到的所述障碍物图像输入深度学习模型,进而识别得到所述障碍物的类型信息。
  6. 根据权利要求1所述的割草机器人的避障方法,其特征在于,
    所述确定静态障碍物或所述动态障碍物对应的避障策略之前包括:
    所述割草机器人基于自身的信息和所述障碍物的信息,生成所述障碍物的避障路径;
    所述利用所述确定的所述避障策略进行避障包括:
    在确定为静态障碍物的情况下确定当前的避障策略为静态障碍物的避障策略;
    所述利用所述确定的所述避障策略进行避障包括:
    利用所述静态障碍物的避障策略进行避障。
  7. 根据权利要求6所述的割草机器人的避障方法,其特征在于,
    所述割草机器人基于自身的信息和所述障碍物的信息,生成所述障碍物的避障 路径包括:
    所述割草机器人基于自身的位置、路径点和尺寸信息和所述障碍物的尺寸、位置、距离和类型信息,生成所述障碍物的避障路径。
  8. 根据权利要求7所述的割草机器人的避障方法,其特征在于,
    所述割草机器人基于自身的位置、路径点和尺寸信息和所述障碍物的尺寸、位置、距离和类型信息,生成所述障碍物的避障路径包括:
    基于所述障碍物的所述尺寸、位置、类型信息以及所述割草机器人的所述尺寸信息确定所述障碍物的扩展轮廓;
    响应于所述障碍物的所述距离小于预设距离,确定所述路径点位于所述障碍物内部的内点,以及确定所述割草机器人的所述位置和所述内点的连线与所述扩展轮廓的交点;
    以所述交点为起点沿着所述扩展轮廓进行搜索,直至所述扩展轮廓上的轮廓点与所述路径点上的目标点连线不与所述障碍物相交为止,确定所述相交时的所述轮廓点;
    将所述割草机器人的位置至所述交点、所述交点至所述轮廓点的所述扩展轮廓部分、以及所述轮廓点至所述目标点的连线部分作为新的路径点,并作为所述避障路径。
  9. 根据权利要求8所述的割草机器人的避障方法,其特征在于,
    所述以所述交点为起点沿着所述扩展轮廓进行搜索,直至所述扩展轮廓上的轮廓点与所述路径点上的目标点连线不与所述障碍物相交为止,确定所述相交时的所述轮廓点包括:
    以所述交点为起点沿着所述扩展轮廓向两侧进行搜索,直至所述扩展轮廓上两侧的轮廓点与所述路径点上的目标点连线均不与所述障碍物相交为止,确定所述相交时的所述轮廓点。
  10. 根据权利要求9所述的割草机器人的避障方法,其特征在于,
    将所述割草机器人的位置至所述交点、所述交点至所述轮廓点的所述扩展轮廓部分、以及所述轮廓点至所述目标点的连线部分作为新的路径点,并作为所述避障路径包括:
    将所述割草机器人的两侧所述连线部分中较短的连线部分的路径点作为新的路径点,并作为所述避障路径,所述连线部分为所述割草机器人的位置至所述交点、所述交点至所述轮廓点的所述扩展轮廓部分、以及所述轮廓点至所述目标点的连线。
  11. 根据权利要求8所述的割草机器人的避障方法,其特征在于,
    所述基于所述障碍物的所述尺寸、位置、类型信息以及所述割草机器人的所述尺寸信息确定所述障碍物的扩展轮廓包括:
    基于所述障碍物的所述尺寸、位置、类型信息以及所述割草机器人的所述尺寸信息确定所述障碍物的多边形形态的扩展轮廓;
    所述以所述交点为起点沿着所述扩展轮廓进行搜索,直至所述扩展轮廓上的轮廓点与所述路径点上的目标点连线不与所述障碍物相交为止,确定此时位置的所述轮廓点包括:
    以所述交点为起点沿着所述扩展轮廓的多边形顶点进行搜索,直至所述扩展轮廓上的顶点与所述路径点上的目标点连线不与所述障碍物相交为止,确定此时位置的所述顶点。
  12. 根据权利要求11所述的割草机器人的避障方法,其特征在于,
    所述基于所述障碍物的尺寸、位置、类型信息以及所述割草机器人的所述尺寸信息确定所述障碍物的扩展轮廓包括:
    基于所述障碍物的所述尺寸、位置、类型信息确定所述障碍物的实际轮廓;
    将所述实际轮廓近似为多边形形态的实际轮廓,以所述多边形形态的实际轮廓为基础结合所述割草机器人的所述尺寸信息确定所述障碍物的多边形形态的扩展轮廓。
  13. 根据权利要求1所述的割草机器人的避障方法,其特征在于,
    所述利用所述确定的所述避障策略进行避障之后包括:
    获取所述割草机器人的避障评分,所述避障评分包括机器人自行评分和/或人工评分;
    基于所述避障评分对所述割草机器人的避障参数进行调整。
  14. 根据权利要求11所述的割草机器人的避障方法,其特征在于,
    所述避障评分包括动态障碍物避障评分和静态障碍物避障评分,所述基于所述避障评分对所述割草机器人的避障参数进行调整包括:
    响应于所述动态障碍物避障评分低于所述动态障碍物避障预设评分,调整所述动态障碍物对应的警告方式,以使所述动态障碍物避障评分不低于所述动态障碍物避障预设评分;响应于所述静态障碍物避障评分低于所述静态障碍物避障预设评分,调整所述静态障碍物对应的避障路径曲线和/或警告方式,以使所述静态障碍物避障评分不低于所述静态障碍物避障预设评分。
  15. 根据权利要求13所述的割草机器人的避障方法,其特征在于,
    所述避障评分包括执行距离评分、绕障距离评分、速度评分和角速度评分,所述基于所述避障评分对所述割草机器人的避障参数进行调整包括:
    响应于所述执行距离评分低于执行距离预设评分,调整所述割草机器人的执行距离以使所述执行距离评分不低于所述执行距离预设评分;响应于所述绕障距离评分低于绕障距离预设评分,调整所述割草机器人的绕障距离以使所述绕障距离评分不低于所述绕障距离预设评分;响应于所述速度评分低于速度预设评分,调整所述割草机器人的速度以使所述速度评分不低于所述速度预设评分;响应于所述角速度评分低于角速度预设评分,调整所述割草机器人的角速度以使所述角速度评分不低于所述速度预设评分;其中,所述执行距离为需要执行所述绕障策略时所述割草机器人与所述障碍物之间的距离,所述绕障距离为执行所述绕障策略过程中所述割草机器人与所述障碍物的最短距离。
  16. 根据权利要求1所述的割草机器人的避障方法,其特征在于,
    所述割草机器人获得障碍物的信息后包括:
    保存所述障碍物的信息;
    累计所述障碍物的信息的保存时长;
    响应于所述保存时长大于预设时长,删除所述障碍物的信息。
  17. 一种割草机器人,其特征在于,所述割草机器人包括,
    机体;
    割草组件,安装于所述机体;
    信息采集组件,安装于所述机体并用于采集障碍物信息;
    控制器,安装于所述机体并用于控制所述机体配合所述信息采集组件,采用权利要求1至16任一项所述的割草机器人的避障方法进行避障。
PCT/CN2021/142674 2021-12-29 2021-12-29 一种割草机器人避障方法和割草机器人 WO2023123117A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/142674 WO2023123117A1 (zh) 2021-12-29 2021-12-29 一种割草机器人避障方法和割草机器人

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/142674 WO2023123117A1 (zh) 2021-12-29 2021-12-29 一种割草机器人避障方法和割草机器人

Publications (1)

Publication Number Publication Date
WO2023123117A1 true WO2023123117A1 (zh) 2023-07-06

Family

ID=86996936

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/142674 WO2023123117A1 (zh) 2021-12-29 2021-12-29 一种割草机器人避障方法和割草机器人

Country Status (1)

Country Link
WO (1) WO2023123117A1 (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105182979A (zh) * 2015-09-23 2015-12-23 上海物景智能科技有限公司 一种移动机器人障碍物检测及避让方法和系统
CN107703945A (zh) * 2017-10-30 2018-02-16 洛阳中科龙网创新科技有限公司 一种多目标融合的智能农用机械路径规划方法
CN107894773A (zh) * 2017-12-15 2018-04-10 广东工业大学 一种移动机器人的导航方法、系统及相关装置
CN109634286A (zh) * 2019-01-21 2019-04-16 深圳市傲基电子商务股份有限公司 割草机器人视觉避障方法、割草机器人和可读存储介质
CN110879596A (zh) * 2019-12-05 2020-03-13 中国北方车辆研究所 低成本自动割草机自主作业系统及其自主作业方法
CN110955241A (zh) * 2019-11-22 2020-04-03 深圳市优必选科技股份有限公司 移动机器人避障方法、装置、移动机器人及存储介质
US20210064043A1 (en) * 2019-08-28 2021-03-04 Samsung Electronics Co., Ltd. Sensor fusion for localization and path planning
CN112947419A (zh) * 2021-01-27 2021-06-11 河北工业职业技术学院 避障方法、装置及设备
CN113741435A (zh) * 2021-08-19 2021-12-03 上海高仙自动化科技发展有限公司 障碍物规避方法、装置、决策器、存储介质、芯片及机器人

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105182979A (zh) * 2015-09-23 2015-12-23 上海物景智能科技有限公司 一种移动机器人障碍物检测及避让方法和系统
CN107703945A (zh) * 2017-10-30 2018-02-16 洛阳中科龙网创新科技有限公司 一种多目标融合的智能农用机械路径规划方法
CN107894773A (zh) * 2017-12-15 2018-04-10 广东工业大学 一种移动机器人的导航方法、系统及相关装置
CN109634286A (zh) * 2019-01-21 2019-04-16 深圳市傲基电子商务股份有限公司 割草机器人视觉避障方法、割草机器人和可读存储介质
US20210064043A1 (en) * 2019-08-28 2021-03-04 Samsung Electronics Co., Ltd. Sensor fusion for localization and path planning
CN110955241A (zh) * 2019-11-22 2020-04-03 深圳市优必选科技股份有限公司 移动机器人避障方法、装置、移动机器人及存储介质
CN110879596A (zh) * 2019-12-05 2020-03-13 中国北方车辆研究所 低成本自动割草机自主作业系统及其自主作业方法
CN112947419A (zh) * 2021-01-27 2021-06-11 河北工业职业技术学院 避障方法、装置及设备
CN113741435A (zh) * 2021-08-19 2021-12-03 上海高仙自动化科技发展有限公司 障碍物规避方法、装置、决策器、存储介质、芯片及机器人

Similar Documents

Publication Publication Date Title
US11363929B2 (en) Apparatus and methods for programming and training of robotic household appliances
US9836653B2 (en) Systems and methods for capturing images and annotating the captured images with information
Levinson et al. Towards fully autonomous driving: Systems and algorithms
Kim et al. End-to-end deep learning for autonomous navigation of mobile robot
US11580724B2 (en) Virtual teach and repeat mobile manipulation system
Dong et al. Real-time avoidance strategy of dynamic obstacles via half model-free detection and tracking with 2d lidar for mobile robots
KR20240063820A (ko) 청소 로봇 및 그의 태스크 수행 방법
CN105629970A (zh) 一种基于超声波的机器人定位避障方法
CN108680155A (zh) 基于部分感知马氏决策过程的机器人最优路径规划方法
Zimmermann et al. Adaptive traversability of unknown complex terrain with obstacles for mobile robots
US20210255638A1 (en) Area Division and Path Forming Method and Apparatus for Self-Moving Device and Automatic Working System
KR20200036677A (ko) 청소 로봇 및 그의 태스크 수행 방법
CN110844402B (zh) 一种智能召唤垃圾桶系统
CN107643751A (zh) 智能行走设备斜坡识别方法和系统
CN110032189A (zh) 一种不依赖地图的智能仓储移动机器人路径规划方法
CN114077807A (zh) 基于语义环境图控制移动机器人的计算机实现方法和设备
Chen et al. A review of autonomous obstacle avoidance technology for multi-rotor UAVs
Cheng et al. A neural network based mobile robot navigation approach using reinforcement learning parameter tuning mechanism
WO2023123117A1 (zh) 一种割草机器人避障方法和割草机器人
US11467598B2 (en) Method of estimating position in local area of large space and robot and cloud server implementing thereof
CN115805595B (zh) 机器人导航方法、装置及杂物清理机器人
KR20230134109A (ko) 청소 로봇 및 그의 태스크 수행 방법
Wang et al. Intelligent robotic lawn mower design
Xue et al. Monocular vision obstacle avoidance UAV: A deep reinforcement learning method
CN112947426A (zh) 基于多传感融合的清洁机器人运动控制系统及方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21969485

Country of ref document: EP

Kind code of ref document: A1