Robot control method and device, computer readable storage medium and robot

By determining the direction of the navigation point when the robot recharges and selecting the target navigation point, the problem of the robot deviating from the charging base during obstacle avoidance is solved, and the success rate of recharge is significantly improved.

CN119427339APending Publication Date: 2025-02-14SHENZHEN SILVER STAR INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310964189.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-01
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

The robot may encounter obstacles when recharging and gradually deviate from the charging base during obstacle avoidance, resulting in a low success rate of recharging.

Method used

When the robot is in a preset state, it determines the first direction and the second direction respectively, and determines the navigation point direction according to these directions, selects the target navigation point, and controls the robot to move to the target navigation point to reduce the offset to the charging base .

Benefits of technology

It effectively improves the success rate of robot recharge, and reduces the offset to the charging base by determining the appropriate navigation point direction while avoiding obstacles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119427339A_ABST
    Figure CN119427339A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of robots, and particularly relates to a robot control method and device, a readable storage medium and a robot. The method comprises the steps that when a robot detects a collision signal and an infrared signal of a charging base, a first direction and a second direction are determined respectively; the first direction is the direction corresponding to the infrared signal, and the second direction is the direction corresponding to the current pose of the robot; determining a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction; and selecting a target navigation point of the robot in the navigation point direction, and controlling the robot to move towards the target navigation point. Through the method, the navigation point direction can be determined from the direction between the first direction and the second direction, and the target navigation point is selected in the navigation point direction, so that the offset of the charging seat is reduced while obstacle avoidance is realized, and the recharging success rate can be effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of robotics technology, and in particular, relates to a robot control method, device, computer-readable storage medium, and robot. Background Art

[0002] With the development of technology, various household robots have gradually entered thousands of households. These robots can help people complete various housework and automatically recharge when needed, greatly saving people's energy and time.

[0003] However, the robot may encounter obstacles during recharging and gradually deviate from the charging base during the obstacle avoidance process, resulting in a low recharging success rate. Summary of the invention

[0004] In view of this, the embodiments of the present application provide a robot control method, device, computer-readable storage medium and robot to solve the problem that the robot gradually deviates from the charging base during the obstacle avoidance process, resulting in a low recharging success rate.

[0005] A first aspect of an embodiment of the present application provides a robot control method, which may include:

[0006] When the robot is in a preset first state, a first direction and a second direction are determined respectively; wherein the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current posture of the robot;

[0007] Determine a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction;

[0008] A target navigation point of the robot is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point.

[0009] In a specific implementation manner of the first aspect, determining the direction of the navigation point according to the first direction and the second direction may include:

[0010] Obtaining a first weight and a second weight respectively; wherein the first weight is a weight corresponding to the first direction, and the second weight is a weight corresponding to the second direction;

[0011] The first direction and the second direction are weighted averaged according to the first weight and the second weight to obtain the navigation point direction.

[0012] In a specific implementation manner of the first aspect, determining the direction of the navigation point according to the first direction and the second direction may include:

[0013] The direction corresponding to the bisector of the angle between the first direction and the second direction is determined as the navigation point direction.

[0014] In a specific implementation of the first aspect, the method may further include:

[0015] When the robot is in a preset second state, determining the second direction; wherein the second state is a state in which the distance to the long side obstacle is less than or equal to a preset distance threshold, or a state in which the collision signal is detected and the infrared signal is not detected;

[0016] Decomposing the second direction into a first decomposition direction and a second decomposition direction; wherein the first decomposition direction is the decomposition direction of the second direction on a first coordinate axis of a preset map coordinate system, and the second decomposition direction is the decomposition direction of the second direction on a second coordinate axis of the map coordinate system;

[0017] Selecting the navigation point direction from the first decomposition direction and the second decomposition direction;

[0018] The target navigation point is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point.

[0019] In a specific implementation manner of the first aspect, selecting the navigation point direction from the first decomposed direction and the second decomposed direction may include:

[0020] Draw a first ray and a second ray from the current position of the robot along the first decomposition direction and the second decomposition direction respectively;

[0021] If the first ray encounters an obstacle earlier than the second ray, selecting the second decomposed direction as the navigation point direction;

[0022] If the second ray encounters an obstacle earlier than the first ray, the first decomposed direction is selected as the navigation point direction.

[0023] In a specific implementation manner of the first aspect, decomposing the second direction into a first decomposition direction and a second decomposition direction may include:

[0024] If the second direction is in the first quadrant, the positive direction of the first coordinate axis is used as the first decomposition direction, and the positive direction of the second coordinate axis is used as the second decomposition direction;

[0025] If the second direction is located in the second quadrant, the negative direction of the first coordinate axis is used as the first decomposition direction, and the positive direction of the second coordinate axis is used as the second decomposition direction;

[0026] If the second direction is in the third quadrant, the negative direction of the first coordinate axis is used as the first decomposition direction, and the negative direction of the second coordinate axis is used as the second decomposition direction;

[0027] If the second direction is located in the fourth quadrant, the positive direction of the first coordinate axis is used as the first decomposition direction, and the negative direction of the second coordinate axis is used as the second decomposition direction.

[0028] In a specific implementation of the first aspect, selecting a target navigation point of the robot in the direction of the navigation point may include:

[0029] Each point in the direction of the navigation point is traversed in turn, and the first point that meets the preset filtering condition is taken as the target navigation point; wherein the filtering condition is that there are no obstacles within a specified range centered on the point.

[0030] A second aspect of the embodiments of the present application provides a robot control device, which may include:

[0031] A direction determination module, used to determine a first direction and a second direction respectively when the robot is in a preset first state; wherein the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current posture of the robot;

[0032] A navigation point direction determination module, configured to determine a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction;

[0033] The navigation point selection module is used to select the target navigation point of the robot in the direction of the navigation point and control the robot to move toward the target navigation point.

[0034] In a specific implementation of the second aspect, the navigation point direction determination module may include:

[0035] A weight acquisition unit, used to acquire a first weight and a second weight respectively; wherein the first weight is a weight corresponding to the first direction, and the second weight is a weight corresponding to the second direction;

[0036] A weighted averaging unit is used to perform a weighted average on the first direction and the second direction according to the first weight and the second weight to obtain the navigation point direction.

[0037] In a specific implementation of the second aspect, the navigation point direction determination module may include:

[0038] A navigation point direction determining unit is used to determine the direction corresponding to the bisector of the angle between the first direction and the second direction as the navigation point direction.

[0039] In a specific implementation of the second aspect, the robot control device may further include:

[0040] A second direction determination module, used for determining the second direction when the robot is in a preset second state; wherein the second state is a state in which the distance to the long side obstacle is less than or equal to a preset distance threshold, or a state in which the collision signal is detected and the infrared signal is not detected;

[0041] a direction decomposition module, used for decomposing the second direction into a first decomposition direction and a second decomposition direction; wherein the first decomposition direction is the decomposition direction of the second direction on a first coordinate axis of a preset map coordinate system, and the second decomposition direction is the decomposition direction of the second direction on a second coordinate axis of the map coordinate system;

[0042] A navigation point direction selection module is used to select the navigation point direction from the first decomposed direction and the second decomposed direction.

[0043] In a specific implementation of the second aspect, the direction decomposition module may include:

[0044] A ray acquisition unit, used for making a first ray and a second ray from the current position of the robot along the first decomposition direction and the second decomposition direction respectively;

[0045] A first selection unit, configured to select the second decomposed direction as the navigation point direction if the first ray encounters an obstacle earlier than the second ray;

[0046] The second selection unit is used to select the first decomposition direction as the navigation point direction if the second ray encounters an obstacle earlier than the first ray.

[0047] In a specific implementation of the second aspect, the direction decomposition module may include:

[0048] a first decomposition unit, configured to use the positive direction of the first coordinate axis as the first decomposition direction and the positive direction of the second coordinate axis as the second decomposition direction if the second direction is located in the first quadrant;

[0049] a second decomposition unit, configured to use the negative direction of the first coordinate axis as the first decomposition direction and the positive direction of the second coordinate axis as the second decomposition direction if the second direction is located in the second quadrant;

[0050] a third decomposition unit, configured to use the negative direction of the first coordinate axis as the first decomposition direction and the negative direction of the second coordinate axis as the second decomposition direction if the second direction is located in the third quadrant;

[0051] The fourth decomposition unit is configured to use the positive direction of the first coordinate axis as the first decomposition direction and the negative direction of the second coordinate axis as the second decomposition direction if the second direction is located in the fourth quadrant.

[0052] In a specific implementation of the second aspect, the navigation point selection module may include:

[0053] The navigation point selection unit is used to traverse each point in the direction of the navigation point in turn and take the first point that meets the preset filtering condition as the target navigation point; wherein the filtering condition is that there are no obstacles within a specified range centered on the point.

[0054] A third aspect of an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any one of the above-mentioned robot control methods are implemented.

[0055] A fourth aspect of an embodiment of the present application provides a robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the above-mentioned robot control methods when executing the computer program.

[0056] A fifth aspect of an embodiment of the present application provides a computer program product. When the computer program product runs on a robot, the robot executes the steps of any one of the above-mentioned robot control methods.

[0057] Compared with the prior art, the embodiments of the present application have the following beneficial effects: when the robot is in a preset first state, the embodiments of the present application respectively determine the first direction and the second direction; wherein the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current position of the robot; the navigation point direction is determined according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction; the target navigation point of the robot is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point. Through the embodiments of the present application, the navigation point direction can be determined from the direction between the first direction and the second direction, and the target navigation point can be selected in the direction of the navigation point, thereby reducing the offset of the charging base while avoiding obstacles, and effectively improving the recharging success rate. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0059] Figure 1 This is a flow chart of an embodiment of a robot control method in an embodiment of the present application;

[0060] Figure 2 is the first schematic diagram of the robot's obstacle avoidance process;

[0061] Figure 3 is a second schematic diagram of the robot's obstacle avoidance process;

[0062] Figure 4 This is a flow chart of another embodiment of a robot control method in an embodiment of the present application;

[0063] Figure 5 This is a schematic diagram of the robot's recharging process;

[0064] Figure 6 This is a schematic diagram of the map coordinate system;

[0065] Figure 7 A schematic diagram of the direction selected for the navigation point;

[0066] Figure 8 This is a schematic diagram of a specific application scenario of the map exploration method;

[0067] Fig. 9 This is a structural diagram of an embodiment of a robot control device in an embodiment of the present application;

[0068] Fig.10 This is a schematic block diagram of a robot in an embodiment of the present application. DETAILED DESCRIPTION

[0069] In order to make the purpose, features, and advantages of the invention of this application more obvious and easy to understand, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the embodiments described below are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0070] It should be understood that when used in this specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or groups thereof.

[0071] It should also be understood that the terms used in this application specification are only for the purpose of describing specific embodiments and are not intended to limit the application. As used in this application specification and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include plural forms.

[0072] It should be further understood that the term “and / or” used in the specification and appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0073] As used in this specification and the appended claims, the term "if" may be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrases "if it is determined" or "if [described condition or event] is detected" may be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.

[0074] In addition, in the description of the present application, the terms "first", "second", "third", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.

[0075] With the development of technology, various household robots have gradually entered thousands of households. These robots can help people complete various housework and automatically recharge when needed, greatly saving people's energy and time.

[0076] However, the robot may encounter obstacles during recharging and gradually deviate from the charging base during the obstacle avoidance process, resulting in a low recharging success rate.

[0077] In view of this, the embodiments of the present application provide a robot control method, device, computer-readable storage medium and robot to solve the problem that the robot gradually deviates from the charging base during the obstacle avoidance process, resulting in a low recharging success rate.

[0078] It should be noted that the executor of the method of the present application is a robot, specifically, it may include but is not limited to sweepers, scrubbers, inspection robots, guide robots, food delivery robots and other common robots in the prior art.

[0079] See also Figure 1 , an embodiment of a robot control method in the embodiment of the present application may include:

[0080] Step S101: When the robot is in a preset first state, a first direction and a second direction are determined respectively.

[0081] In an embodiment of the present application, if the robot detects a collision signal and an infrared signal from a charging base, it can be determined that the robot is in a preset first state; thereafter, the first direction and the second direction can be determined respectively; wherein the first direction is the direction corresponding to the infrared signal, and the second direction is the direction corresponding to the current posture of the robot.

[0082] Specifically, the robot can perform collision detection and infrared signal search through various preset sensors to determine whether the robot is in the first state.

[0083] Step S102: determine the direction of the navigation point according to the first direction and the second direction.

[0084] It should be noted that if the orientation of the robot is roughly the same as the orientation of the charging base, when a collision signal is detected, the orientation of the charging base can be inferred based on the direction corresponding to the collision signal and the direction corresponding to the current posture of the robot, and a certain angle in front of or to the side of the direction can be selected as the navigation point direction, such as Figure 2 However, if the orientation of the robot is significantly different from that of the charging station, the following error will occur: Figure 3 In the situation shown, when the collision signal is detected, the directions corresponding to the robot's current posture are direction A, direction B and direction C, which are all significantly different from the orientation of the charging base. Continuing the above method to determine the direction of the navigation point will cause the robot to gradually deviate from the charging base, making it difficult to successfully recharge.

[0085] Therefore, in the implementation of the present application, a direction between the first direction and the second direction can be selected as the navigation point direction. Specifically, any direction between the first direction and the second direction can be selected as the navigation point direction.

[0086] In a specific implementation of an embodiment of the present application, a first weight corresponding to the first direction and a second weight corresponding to the second direction may be calculated respectively; thereafter, the first direction and the second direction may be weighted averaged according to the first weight and the second weight to obtain the direction of the navigation point. Specifically, the recharge success rate of taking the first direction as the direction of the navigation point and the recharge success rate of taking the second direction as the direction of the navigation point may be determined based on historical recharge data; thereafter, the weights corresponding to different directions may be determined based on the recharge success rate, wherein the weight corresponding to each direction is positively correlated with its recharge success rate. Here, the first direction may be denoted as α, the second direction as β, the first weight as w1, and the second weight as w2; thereafter, the navigation point direction θ may be calculated using the formula θ=w1*α+w2*β.

[0087] In another specific implementation of the embodiment of the present application, the direction corresponding to the angular bisector of the angle between the first direction and the second direction may be preferably determined as the navigation point direction. In this case, the angle between the first direction and the navigation point direction is equal to the angle between the second direction and the navigation point direction. Here, the navigation point direction θ may be calculated by the formula θ=0.5*(α+β).

[0088] Step S103: Select a target navigation point of the robot in the direction of the navigation point, and control the robot to move toward the target navigation point.

[0089] In an embodiment of the present application, each point in the direction of the navigation point can be traversed in sequence from near to far, and the first point that meets the preset filtering conditions is taken as the target navigation point; wherein the filtering condition is that there are no obstacles within a specified range centered on the point.

[0090] Specifically, when traversing each point in the direction of the navigation point, a preset sensor can be used to detect obstacles in the direction of the navigation point to determine whether there are obstacles within a specified range centered on the current point; if there are no obstacles within the specified range centered on the current point, the current point meets the filtering conditions, and the current point can be used as the target navigation point; if there are obstacles within the specified range centered on the current point, the current point does not meet the filtering conditions, and the traversal process can be continued according to the above method until a point that meets the filtering conditions is found.

[0091] It is understandable that the size of the specified range can be specific and situational according to actual needs, and the embodiment of the present application does not limit this. For example, the specified range can be set to 1 meter, and the screening condition is that there are no obstacles within a 1-meter range centered on the target navigation point.

[0092] After the target navigation point is selected, the robot can be controlled to move toward the target navigation point and continue the automatic recharging process.

[0093] It should be noted that if the robot is not in the first state, it can be detected whether the robot is in the second state; wherein the second state is a state in which the distance of the long side obstacle is less than or equal to the distance threshold, or a collision signal is detected but no infrared signal is detected.

[0094] Specifically, if the robot is in the second state, it can execute the following Figure 4 Steps shown:

[0095] Step S401: When the robot is in a preset second state, determine a second direction.

[0096] In an embodiment of the present application, if the distance between the robot and the long side obstacle is less than or equal to a distance threshold, or a collision signal is detected and no infrared signal is detected, it can be determined that the robot is in the second state; thereafter, the direction corresponding to the current posture of the robot can be determined as the second direction.

[0097] Specifically, the robot can perform obstacle detection, collision detection, and infrared signal search through various preset sensors to determine whether the robot is in the second state.

[0098] The long side obstacle may be an obstacle whose length is greater than a preset length threshold; for example, a wall, a door, etc. may be used as a long side obstacle. Both the distance threshold and the length threshold may be specifically and situationally set according to actual conditions, and the present application embodiment does not specifically limit this.

[0099] Step S402: decompose the second direction into a first decomposition direction and a second decomposition direction.

[0100] like Figure 5 As shown in the figure, when the robot is in the second state, it may not be able to detect infrared signals and adjust its direction according to the infrared signals, or it may be too close to the long-side obstacle and be blocked by the long-side obstacle, causing the robot to deviate from the actual position of the charging station and find other wrong positions. To avoid this situation, you can try to avoid areas with obstacles and navigate the robot to a relatively open area to increase the probability of finding the charging station.

[0101] Therefore, in the embodiment of the present application, when the robot is in the second state, the second direction can be decomposed into a first decomposed direction and a second decomposed direction, and then the navigation point direction is selected from them to improve the success rate of the robot's recharging. Among them, the first decomposed direction is the decomposed direction of the second direction on the first coordinate axis of the preset map coordinate system, and the second decomposed direction is the decomposed direction of the second direction on the second coordinate axis of the map coordinate system.

[0102] Before decomposing the second direction, a map coordinate system can be established first. Specifically, a map coordinate system can be constructed with the current position of the robot as the center, the horizontal direction as the first coordinate axis of the map coordinate system, and the vertical direction as the second coordinate axis of the map coordinate system; and the quadrant surrounded by the positive direction of the first coordinate axis and the positive direction of the second coordinate axis can be recorded as the first quadrant, the quadrant surrounded by the negative direction of the first coordinate axis and the positive direction of the second coordinate axis can be recorded as the second quadrant, and the quadrant surrounded by the negative direction of the first coordinate axis and the negative direction of the second coordinate axis can be recorded as the third quadrant; the quadrant surrounded by the positive direction of the first coordinate axis and the negative direction of the second coordinate axis can be recorded as the fourth quadrant, such as Figure 6 shown.

[0103] After establishing the map coordinates, the second direction can be decomposed toward the first coordinate axis to obtain a first decomposed direction; and the second direction can be decomposed toward the second coordinate axis to obtain a second decomposed direction.

[0104] In an embodiment of the present application, the second direction can be decomposed according to the quadrant in which the second direction is located; if the second direction is located in the first quadrant, the positive direction of the first coordinate axis can be used as the first decomposition direction, and the positive direction of the second coordinate axis can be used as the second decomposition direction; if the second direction is located in the second quadrant, the negative direction of the first coordinate axis can be used as the first decomposition direction, and the positive direction of the second coordinate axis can be used as the second decomposition direction; if the second direction is located in the third quadrant, the negative direction of the first coordinate axis can be used as the first decomposition direction, and the negative direction of the second coordinate axis can be used as the second decomposition direction; if the second direction is located in the fourth quadrant, the positive direction of the first coordinate axis can be used as the first decomposition direction, and the negative direction of the second coordinate axis can be used as the second decomposition direction.

[0105] Step S403: Select a navigation point direction from the first decomposition direction and the second decomposition direction.

[0106] See also Figure 7, in the embodiment of the present application, a first ray and a second ray can be made respectively along the first decomposition direction and the second decomposition direction from the current position of the robot; and whether there are obstacles in the first decomposition direction and the second decomposition direction can be detected respectively; if there are obstacles, the distance between the obstacle and the current position of the robot is recorded. Here, the distance between the obstacle located in the first decomposition direction and the robot can be denoted as d1, and the distance between the obstacle located in the second decomposition direction and the robot can be denoted as d2; if d1 < d2, it can be considered that the first ray encounters the obstacle earlier than the second ray, and then the second decomposition direction can be selected as the navigation point direction; if d1 > d2, it can be considered that the second ray encounters the obstacle earlier than the first ray, and then the first decomposition direction can be selected as the navigation point direction.

[0107] It should be noted that within the detection range of the preset sensor, if no obstacle is detected in a certain decomposition direction, the decomposition direction can be directly used as the navigation point direction. Specifically, within the detection range of the preset sensor, if no obstacle is detected in the first decomposition direction, the first decomposition direction can be directly used as the navigation point direction; if no obstacle is detected in the second decomposition direction, the second decomposition direction can be directly used as the navigation point direction.

[0108] Step S404: Select a target navigation point in the navigation point direction and control the robot to move towards the target navigation point.

[0109] Here, reference can be made to the description in step S103 to select a target navigation point in the navigation point direction and control the robot to move towards the target navigation point.

[0110] For the convenience of understanding, the robot control method of the embodiment of the present application will be described below in combination with specific application scenarios.

[0111] Please refer to Figure 8 , when the robot travels near the first obstacle, it can be detected that the distance between the robot and the long-edge obstacle is greater than the distance threshold, and the collision signal and the infrared signal of the charging dock can be detected. Therefore, it can be determined that the robot is in the first state; at this time, the first direction C (the angle with the second coordinate axis is α) and the second direction C' (the angle with the second coordinate axis is β) can be determined respectively, and the direction between the first direction and the second direction is determined as the navigation point direction C_ (the angle with the second coordinate axis is θ).

[0112] Please continue to refer to Figure 8 , when the robot travels near the second obstacle, the collision signal can be detected, but the infrared signal cannot be detected. It can be determined that the robot is in the second state at this time; therefore, the second direction B can be decomposed into a first decomposition direction and a second decomposition direction, and the first decomposition direction is selected from the first decomposition direction and the second decomposition direction as the navigation point direction B_.

[0113] Please continue reading Figure 8 When the robot drives near the third obstacle, a collision signal can be detected, but no infrared signal can be detected. It can be determined that the robot is in the second state at this time; therefore, the second direction A can be decomposed into a first decomposition direction and a second decomposition direction, and the second decomposition direction can be selected from the first decomposition direction and the second decomposition direction as the navigation point direction A_.

[0114] In summary, in the embodiment of the present application, when the robot is in a preset first state, the first direction and the second direction are determined respectively; wherein, the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current position of the robot; the navigation point direction is determined according to the first direction and the second direction; wherein, the navigation point direction is between the first direction and the second direction; the target navigation point of the robot is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point. Through the embodiment of the present application, the navigation point direction can be determined from the direction between the first direction and the second direction, and the target navigation point can be selected in the direction of the navigation point, so that the deviation of the charging base can be reduced while avoiding obstacles, and the recharging success rate can be effectively improved.

[0115] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0116] Corresponding to a robot control method described in the above embodiment, Fig. 9 A structural diagram of an embodiment of a robot control device provided in an embodiment of the present application is shown.

[0117] In this embodiment, a robot control device may include:

[0118] The direction determination module 901 is used to determine the first direction and the second direction respectively when the robot is in a preset first state; wherein the first state is a state where a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current posture of the robot;

[0119] A navigation point direction determination module 902, configured to determine a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction;

[0120] The navigation point selection module 903 is used to select the target navigation point of the robot in the direction of the navigation point and control the robot to move toward the target navigation point.

[0121] In a specific implementation of the embodiment of the present application, the navigation point direction determination module may include:

[0122] A weight acquisition unit, used to acquire a first weight and a second weight respectively; wherein the first weight is a weight corresponding to the first direction, and the second weight is a weight corresponding to the second direction;

[0123] A weighted averaging unit is used to perform a weighted average on the first direction and the second direction according to the first weight and the second weight to obtain the navigation point direction.

[0124] In a specific implementation of the embodiment of the present application, the navigation point direction determination module may include:

[0125] A navigation point direction determining unit is used to determine the direction corresponding to the bisector of the angle between the first direction and the second direction as the navigation point direction.

[0126] In a specific implementation of the embodiment of the present application, the robot control device may further include:

[0127] A second direction determination module, used for determining the second direction when the robot is in a preset second state; wherein the second state is a state in which the distance to the long side obstacle is less than or equal to a preset distance threshold, or a state in which the collision signal is detected and the infrared signal is not detected;

[0128] a direction decomposition module, used for decomposing the second direction into a first decomposition direction and a second decomposition direction; wherein the first decomposition direction is the decomposition direction of the second direction on a first coordinate axis of a preset map coordinate system, and the second decomposition direction is the decomposition direction of the second direction on a second coordinate axis of the map coordinate system;

[0129] A navigation point direction selection module is used to select the navigation point direction from the first decomposed direction and the second decomposed direction.

[0130] In a specific implementation of the embodiment of the present application, the direction decomposition module may include:

[0131] A ray acquisition unit, used for making a first ray and a second ray from the current position of the robot along the first decomposition direction and the second decomposition direction respectively;

[0132] A first selection unit, configured to select the second decomposed direction as the navigation point direction if the first ray encounters an obstacle earlier than the second ray;

[0133] The second selection unit is used to select the first decomposition direction as the navigation point direction if the second ray encounters an obstacle earlier than the first ray.

[0134] In a specific implementation of the embodiment of the present application, the direction decomposition module may include:

[0135] a first decomposition unit, configured to use the positive direction of the first coordinate axis as the first decomposition direction and the positive direction of the second coordinate axis as the second decomposition direction if the second direction is located in the first quadrant;

[0136] a second decomposition unit, configured to use the negative direction of the first coordinate axis as the first decomposition direction and the positive direction of the second coordinate axis as the second decomposition direction if the second direction is located in the second quadrant;

[0137] a third decomposition unit, configured to use the negative direction of the first coordinate axis as the first decomposition direction and the negative direction of the second coordinate axis as the second decomposition direction if the second direction is located in the third quadrant;

[0138] The fourth decomposition unit is configured to use the positive direction of the first coordinate axis as the first decomposition direction and the negative direction of the second coordinate axis as the second decomposition direction if the second direction is located in the fourth quadrant.

[0139] In a specific implementation of the embodiment of the present application, the navigation point selection module may include:

[0140] The navigation point selection unit is used to traverse each point in the direction of the navigation point in turn and take the first point that meets the preset filtering condition as the target navigation point; wherein the filtering condition is that there are no obstacles within a specified range centered on the point.

[0141] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices, modules and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0142] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0143] Fig.10 A schematic block diagram of a robot provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.

[0144] like Fig.10 As shown, the robot 10 of this embodiment includes: a processor 100, a memory 101, and a computer program 102 stored in the memory 101 and executable on the processor 100. When the processor 100 executes the computer program 102, the steps in the above-mentioned robot control method embodiments are implemented, for example Figure 1 Alternatively, when the processor 100 executes the computer program 102, the functions of each module / unit in the above-mentioned device embodiments are realized, for example Fig. 9 The functions of modules 901 to 903 are shown.

[0145] Exemplarily, the computer program 102 may be divided into one or more modules / units, which are stored in the memory 101 and executed by the processor 100 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program 102 in the robot 10.

[0146] Those skilled in the art will understand that Fig.10 It is only an example of the robot 10 and does not constitute a limitation of the robot 10. The robot 10 may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the robot 10 may also include input and output devices, network access devices, buses, etc.

[0147] The processor 100 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0148] The memory 101 may be an internal storage unit of the robot 10, such as a hard disk or memory of the robot 10. The memory 101 may also be an external storage device of the robot 10, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the robot 10. Further, the memory 101 may also include both an internal storage unit of the robot 10 and an external storage device. The memory 101 is used to store the computer program and other programs and data required by the robot 10. The memory 101 may also be used to temporarily store data that has been output or is to be output.

[0149] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0150] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0151] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0152] In the embodiments provided in the present application, it should be understood that the disclosed devices / robots and methods can be implemented in other ways. For example, the device / robot embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0153] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0154] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0155] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable storage medium may include: any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable storage medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable storage media do not include electric carrier signals and telecommunication signals.

[0156] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A robot control method, characterized in that: include: When the robot is in a preset first state, a first direction and a second direction are determined respectively; wherein the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current posture of the robot; Determine a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction; A target navigation point of the robot is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point.

2. The robot control method according to claim 1, characterized in that: The determining the direction of the navigation point according to the first direction and the second direction includes: Obtaining a first weight and a second weight respectively; wherein the first weight is a weight corresponding to the first direction, and the second weight is a weight corresponding to the second direction; The first direction and the second direction are weighted averaged according to the first weight and the second weight to obtain the navigation point direction.

3. The robot control method according to claim 1, characterized in that: The determining the direction of the navigation point according to the first direction and the second direction includes: The direction corresponding to the bisector of the angle between the first direction and the second direction is determined as the navigation point direction.

4. The robot control method according to claim 1, characterized in that: Also includes: When the robot is in a preset second state, determining the second direction; wherein the second state is a state in which the distance to the long side obstacle is less than or equal to a preset distance threshold, or a state in which the collision signal is detected and the infrared signal is not detected; Decomposing the second direction into a first decomposition direction and a second decomposition direction; wherein the first decomposition direction is the decomposition direction of the second direction on a first coordinate axis of a preset map coordinate system, and the second decomposition direction is the decomposition direction of the second direction on a second coordinate axis of the map coordinate system; Selecting the navigation point direction from the first decomposition direction and the second decomposition direction; The target navigation point is selected in the direction of the navigation point, and the robot is controlled to move toward the target navigation point.

5. The robot control method according to claim 4, characterized in that: The selecting the navigation point direction from the first decomposition direction and the second decomposition direction comprises: Draw a first ray and a second ray from the current position of the robot along the first decomposition direction and the second decomposition direction respectively; If the first ray encounters an obstacle earlier than the second ray, selecting the second decomposed direction as the navigation point direction; If the second ray encounters an obstacle earlier than the first ray, the first decomposed direction is selected as the navigation point direction.

6. The robot control method according to claim 4, characterized in that: The decomposing the second direction into a first decomposition direction and a second decomposition direction comprises: If the second direction is in the first quadrant, the positive direction of the first coordinate axis is used as the first decomposition direction, and the positive direction of the second coordinate axis is used as the second decomposition direction; If the second direction is located in the second quadrant, the negative direction of the first coordinate axis is used as the first decomposition direction, and the positive direction of the second coordinate axis is used as the second decomposition direction; If the second direction is in the third quadrant, the negative direction of the first coordinate axis is used as the first decomposition direction, and the negative direction of the second coordinate axis is used as the second decomposition direction; If the second direction is located in the fourth quadrant, the positive direction of the first coordinate axis is used as the first decomposition direction, and the negative direction of the second coordinate axis is used as the second decomposition direction.

7. The robot control method according to any one of claims 1 to 6, characterized in that: The step of selecting a target navigation point of the robot in the direction of the navigation point comprises: Each point in the direction of the navigation point is traversed in turn, and the first point that meets the preset filtering condition is taken as the target navigation point; wherein the filtering condition is that there are no obstacles within a specified range centered on the point.

8. A robot control device, characterized in that: include: A direction determination module, used to determine a first direction and a second direction respectively when the robot is in a preset first state; wherein the first state is a state in which a collision signal and an infrared signal of a charging base are detected; the first direction is a direction corresponding to the infrared signal, and the second direction is a direction corresponding to the current posture of the robot; A navigation point direction determination module, configured to determine a navigation point direction according to the first direction and the second direction; wherein the navigation point direction is between the first direction and the second direction; The navigation point selection module is used to select the target navigation point of the robot in the direction of the navigation point and control the robot to move toward the target navigation point.

9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the robot control method according to any one of claims 1 to 7 are implemented.

10. A robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the robot control method according to any one of claims 1 to 7 are implemented.