Positioning method of self-moving robot and self-moving robot
Patent Information
- Application Number
- CN202110752607.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-02
- Publication Date
- 2026-10-20
- Estimated Expiration
- 2041-07-02
AI Technical Summary
设p1处的激光观测与地图的匹配度为degree(p1),对称位姿q1处的激光观测与地图的匹配度为degree(q1),因p1与q1的环境狭小,degree(p1)与degree(q1)接近,机器人仍无法定位成功
[0037]本申请上述实施例提供的技术方案,在机器人定位失败后,控制其往周边环境较为空旷的方向运动,然后尝试重新定位,相比随机游走后进行重新定位,本申请可以避免机器人陷入角落或狭小区域,在空旷区域机器人观察到的特征处更为丰富,且相似性较少,定位成功率更高。
Smart Images

Figure CN115553656B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics technology, and in particular to a localization method for a self-moving robot and the self-moving robot itself. Background Technology
[0002] Currently, laser-guided cleaning robots are widely used in homes. When encountering abnormal situations such as being moved or slipping during use, the robot needs to reposition itself. If similar scenes exist in the environment, or if the map information is incomplete, the robot may not be able to locate itself successfully on the first attempt and usually needs to move a certain distance before trying again.
[0003] like Figure 1 As shown in the diagram, in the bedroom, because the bed is placed in the middle and the environments on both sides are similar, the robot is moved and placed in pose p0. However, because the environment at q0 is similar, the robot cannot determine its actual position, resulting in a localization failure. The pose after the movement affects the success rate of the next relocalization. The current movement method is random walking, that is, while avoiding obstacles, it randomly moves in one direction.
[0004] After a single positioning failure, if the robot chooses a random direction to move forward, such as direction α, then... Figure 2 As shown, after moving a certain distance, the robot reaches p1 and attempts to re-localize. Let the matching degree between the laser observation and the map at p1 be degree(p1), and the matching degree between the laser observation and the map at the symmetrical pose q1 be degree(q1). Because the environments at p1 and q1 are confined, degree(p1) and degree(q1) are close, and the robot still cannot successfully localize. Therefore, random walks may cause the robot to enter corners or confined spaces, resulting in continued failure to localize. Summary of the Invention
[0005] This application provides a positioning method for a self-moving robot to improve the positioning success rate.
[0006] This application provides a localization method for a self-moving robot, including:
[0007] If location fails, determine the open direction of the current location;
[0008] The robot is controlled to move a specified distance along the open direction to reach the second position;
[0009] Reposition at the second location.
[0010] In one embodiment, after repositioning at the second location, the method further includes:
[0011] If repositioning fails, the process of determining the open direction, moving a specified distance along the open direction, and then repositioning is repeated until repositioning is successful or the number of repositioning attempts meets the threshold.
[0012] In one embodiment, determining the open direction of the current location includes:
[0013] Divide the area around the current location into multiple fan-shaped regions, with the current location as the center.
[0014] For each sector, the sector length of the sector is determined based on the length of each laser beam emitted from the current position within the sector.
[0015] The direction of the open space is determined based on the sector length of each sector.
[0016] In one embodiment, dividing the area around the current position into multiple fan-shaped regions centered on the current position includes:
[0017] Divide the area around the current location into multiple fan-shaped regions with the same angle, centered on the current location.
[0018] In one embodiment, determining the sector length of each sector region based on the length of each laser beam emitted from the current position within that sector region includes:
[0019] For each sector, based on the length of each laser beam emitted from the current position within the sector, the length of the shortest laser beam is taken as the sector length of the sector.
[0020] In one embodiment, determining the open space direction based on the sector length of each sector region includes:
[0021] For each sector, the degree of openness of the sector is obtained based on the sector lengths of the surrounding sectors; the sector lengths are positively correlated with the degree of openness.
[0022] The direction of the open space is determined based on the degree of openness of each sector area.
[0023] In one embodiment, determining the direction of openness based on the openness of each sector region includes:
[0024] The target sector is determined based on the degree of openness of each sector area;
[0025] Based on the angle of each sector and the sector through which the robot rotates from its current sector to the target sector, the rotation angle to the target sector is determined, thus obtaining the open direction.
[0026] In one embodiment, determining the target sector based on the openness of each sector region includes:
[0027] If the repositioning is the first repositioning, the sector with the largest openness is taken as the target sector, based on the openness of each sector.
[0028] If the re-localization is not the first re-localization, the openness of each sector is multiplied by the corresponding weight coefficient, and the sector with the largest result is selected as the target sector; wherein, the weight coefficient of the sector farther away from the robot's current direction is smaller.
[0029] In one embodiment, repositioning at the second location includes:
[0030] A single frame of laser data is collected at the second location, and the single frame of laser data is matched and calculated with map laser data to determine the relative position of the second location on the map.
[0031] or;
[0032] Multiple frames of laser data are collected within a preset range of the second location. The multiple frames of laser data are then matched and calculated with the map laser data to determine the relative position of the second location on the map.
[0033] This application embodiment also provides a self-moving robot, the self-moving robot comprising:
[0034] processor;
[0035] Memory used to store processor-executable instructions;
[0036] The processor is configured to execute the aforementioned positioning method for the self-moving robot.
[0037] The technical solution provided in the above embodiments of this application controls the robot to move towards a more open area after the robot fails to locate itself, and then attempts to relocate. Compared with relocating after a random walk, this application can avoid the robot getting stuck in corners or narrow areas. In open areas, the robot observes more features with less similarity, resulting in a higher success rate of localization. Attached Figure Description
[0038] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly described below.
[0039] Figure 1 This is a schematic diagram illustrating the principle of location failure in the background technology;
[0040] Figure 2This is a schematic diagram illustrating the principle that random walks cause localization failure in the background technology;
[0041] Figure 3 A schematic diagram of the architecture of the self-moving robot provided in the embodiments of this application;
[0042] Figure 4 A flowchart illustrating a positioning method for a self-moving robot provided in an embodiment of this application;
[0043] Figure 5 This is a schematic diagram illustrating the effect of moving a certain distance after finding an open direction, as provided in the embodiments of this application;
[0044] Figure 6 This is a schematic diagram illustrating the principle of relocation provided in an embodiment of this application;
[0045] Figure 7 This is a schematic diagram illustrating the process of determining the direction of an open area, as provided in an embodiment of this application.
[0046] Figure 8 This is a schematic diagram illustrating the principle of determining the direction of open space provided in an embodiment of this application;
[0047] Figure 9 yes Figure 7 Detailed flowchart of step S730 in the corresponding embodiment;
[0048] Figure 10 yes Figure 9 Detailed flowchart of step S732 in the corresponding embodiment;
[0049] Figure 11 This is a block diagram illustrating a positioning device for a self-moving robot according to an embodiment of this application. Detailed Implementation
[0050] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.
[0051] Similar reference numerals and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures. Furthermore, in the description of this application, terms such as "first," "second," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0052] Figure 3 This is a schematic diagram of the architecture of the self-moving robot provided in the embodiments of this application, as shown below. Figure 3 As shown, the self-moving robot 300 includes a processor 310 and a memory 320 for storing executable instructions of the processor 310. The processor 310 is configured to execute the positioning method of the self-moving robot provided in the embodiments of this application.
[0053] The processor 310 may be a device that includes a central processing unit (CPU), a graphics processing unit (GPU), or other forms of processing units with data processing capabilities and / or instruction execution capabilities. It can process data from other components in the robot and control other components in the robot to perform desired functions.
[0054] The memory 320 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor may execute the program instructions to implement the localization method of the self-moving robot described below. Various application programs and various data may also be stored in the computer-readable storage medium, such as various data used and / or generated by the application programs.
[0055] Figure 4 This is a flowchart illustrating a positioning method for a self-moving robot provided in an embodiment of this application. According to their application, self-moving robots can be cleaning robots, tour guide robots, delivery robots, etc. Figure 4 As shown, the method includes the following steps S410-S430.
[0056] Step S410: When positioning fails, determine the open direction of the current location.
[0057] by Figure 1 For example, suppose the robot's current position is p0. Since the environment at position p0 is similar to that at position q0, the robot cannot determine whether it is currently at position p0 or q0 based on the collected environmental laser data, and thus the localization can be considered a failure.
[0058] An open direction refers to the direction around the robot's current position where the field of vision is wide and obstacles are far away.
[0059] The robot can use lidar to detect the distance between its current position and surrounding obstacles, and then define the direction of the obstacle at the largest distance or greater than a set threshold as the open direction. Alternatively, it can use a camera to detect the distance between its current position and surrounding obstacles, and then define the direction of the obstacle at the largest distance or greater than a set threshold as the open direction. Or, it can use a range sensor to detect the distance between its current position and surrounding obstacles, and then define the direction of the obstacle at the largest distance or greater than a set threshold as the open direction.
[0060] An open direction can be represented by a relative angle or an absolute angle. A relative angle can be an angle relative to the robot's current orientation. For example, the robot's current orientation can be considered 0 degrees, and the smallest angle by which the robot rotates to the open direction, such as a 75-degree clockwise rotation, can be considered the open direction. An absolute angle can be an angle determined based on the cardinal directions, such as 25 degrees south of east.
[0061] Step S420: Control the robot to move a specified distance along the open direction to reach the second position.
[0062] The specified distance can be a preset fixed value, such as 0.5 meters, 0.4 meters, etc. As needed, the specified distance can also be changed according to the size of the environment outline. The larger the environment outline, the larger the specified distance, and the smaller the environment outline, the smaller the specified distance.
[0063] The second position refers to the position the robot reaches after moving a specified distance along an open path from its current position. It is called the second position to distinguish it from the current position.
[0064] For example, suppose the open direction is an angle relative to the robot's current orientation, such as a 75-degree clockwise rotation, and the specified distance is 0.5 meters. The robot's orientation can first rotate 75 degrees clockwise, then move forward 0.5 meters to reach the second position.
[0065] For example, assuming the open area is 25 degrees south of east, the robot can first rotate to 25 degrees south of east, then move forward 0.5 meters to reach the second position. Figure 5 As shown, the robot moves forward a distance L0 after rotating to reach pose p1.
[0066] Step S430: Reposition at the second position.
[0067] Localization refers to determining the robot's current position within a pre-built map. For example... Figure 6 As shown, the robot re-localizes after moving to p1. Due to the significant environmental differences at p1, the localization success rate is high.
[0068] In one embodiment, repositioning at the second location may involve: acquiring a single frame of laser data at the second location, and using the single frame of laser data to perform matching calculations with map laser data to determine the relative position of the second location on the map.
[0069] A single frame of laser data refers to a single frame of laser data used to represent the distance of surrounding objects relative to a second location. Map laser data can be laser data collected in advance at each location point on the map. If the single frame of laser data collected at the second location is substantially consistent with the laser data collected at a certain location point, for example, if the matching degree is greater than a threshold, the second location can be considered to be that location point on the map, thus achieving localization.
[0070] In one embodiment, repositioning at the second location may involve: collecting multiple frames of laser data within a preset range of the second location, and performing matching calculations between the multiple frames of laser data and map laser data to determine the relative position of the second location on the map.
[0071] The preset range allows for a short distance forward after reaching the second location. Each frame of laser data can be matched and calculated with map laser data to determine a location point. Based on multiple location points, the second location can be determined. For example, the second location could be the starting point on a straight line containing multiple location points.
[0072] The preset range can also be a circular area with the second location as the center and a preset distance as the radius. Each frame of laser data can be matched and calculated with the map laser data to determine a location point. Based on multiple location points, the second location can be determined. In this case, the second location can be the center of multiple location points.
[0073] It should be noted that in a home environment, compared to confined spaces like corners, a robot observing more features and exhibiting fewer similarities is more likely to succeed in localization when positioned in an open area in the center of the room, resulting in a higher success rate. The technical solution provided in the above embodiments of this application, after a robot fails to locate itself, controls it to move towards a more open area and then attempts relocalization, which can improve the success rate of localization.
[0074] In one embodiment, after step S430 above, if repositioning fails, the steps of determining the open direction, moving a specified distance along the open direction, and then repositioning are executed repeatedly until repositioning is successful or the number of repositioning attempts meets the threshold.
[0075] In other words, each time the positioning fails, you can move a distance in an open area and try to locate again until the positioning is successful or the number of attempts reaches the preset maximum, at which point the positioning will stop.
[0076] Specifically, after the first positioning failure, the robot first uses LiDAR to detect the most open direction in the surrounding area, then moves a distance in that direction and attempts positioning a second time; if positioning still fails, it detects the most open direction in the surrounding area again and moves a distance in that direction. This process is repeated until repositioning is successful or the predetermined number of attempts is reached.
[0077] The advantage of the above embodiment is that the robot is always controlled to move towards an open area of the room. Compared with the random walk approach, the probability of successful positioning is higher each time, thereby reducing the number of attempts and improving positioning efficiency.
[0078] The following is a detailed description of how to determine the direction of an open area. For example... Figure 7 As shown, it includes the following steps S710-S730.
[0079] Step S710: Divide the area around the current position into multiple fan-shaped regions, with the current position as the center.
[0080] like Figure 8 As shown, the robot's 360° perimeter is divided into n sector regions. The sector where the robot is currently located is denoted as sector S0, and the robot's current direction is set as the center angle of sector S0. Each sector region is then labeled (S0, S1, ..., S2) in a clockwise direction. i ,…,S n-1 ).
[0081] The circumferential angles of each sector can be the same or different. For ease of calculation, in one embodiment, the circumferential angles of each sector can be the same, that is, the area around the current position is divided into multiple sector areas with the same angle.
[0082] Step S720: For each sector, determine the sector length of the sector based on the length of each laser beam emitted from the current position within the sector.
[0083] In one embodiment, for each sector, based on the length of each laser beam emitted from the current position within the sector, the length of the shortest laser beam can be used as the sector length of the sector. Right now:
[0084]
[0085] like Figure 8 As shown, in sector S i If the shortest laser length is Laser1, then...
[0086] In another embodiment, the sector length of each sector region can be the mean, median, or maximum value of all laser beam lengths within that sector region.
[0087] Step S730: Determine the open space direction based on the sector length of each sector area.
[0088] It's important to explain that the length of the laser beam represents the distance of the obstacle in front relative to the current position, while the sector length of each sector is determined by the length of the laser beam within that sector. Therefore, the sector length of each sector can be used to characterize the openness of that sector. The larger the sector length, the more open the area.
[0089] In one embodiment, the direction of the sector with the longest sector length can be considered as an open direction. The direction of the sector can be the direction of its radius or the direction of its centerline.
[0090] In another embodiment, such as Figure 9 As shown, step S730 can specifically include steps S731-S732.
[0091] Step S731: For each sector, the degree of openness of the sector is obtained based on the sector length of the surrounding sectors; the sector length is positively correlated with the degree of openness.
[0092] The surrounding sectors of a sector refer to the several sector regions to the left and right of the main sector. For example, sector S... i The two fan-shaped areas S on the left i-1 S i-2 S-shaped region i The two sector-shaped areas S on the right i+1 S i+2 , and the sector region S i Together they form 5 sector regions. The sum of the sector lengths of these 5 sector regions can be used as the value of sector region S. i The degree of openness.
[0093] Specifically, we can use f(S) i Define the sector region S i The degree of openness in the direction, f(S) i The larger the value of S, the greater the value of S. i The more open the direction, the more likely it is that:
[0094]
[0095] Where m represents S i The number of sectors extending in the left and right directions.
[0096] If (i+x)>(n-1), then i+x=i+xn,
[0097] If (i+x)<0, then i+x=i+x+n. n represents the total number of sector regions.
[0098] In other embodiments, the openness of a certain sector area can also be represented by the average sector length of the surrounding sectors or the weighted sum of the sector lengths of the surrounding sectors. The closer a sector is to the sector area, the greater its weight can be.
[0099] Step S732: Determine the direction of the open space based on the degree of openness of each sector area.
[0100] In one embodiment, the direction of the sector with the greatest openness can be considered the openness direction. Therefore, the sector with the greatest openness is:
[0101] S x , and f(S) x = max(f(S0), f(S1), ..., f(S n-1 (3)
[0102] The direction in which the sector is located can be the direction of the center line of that sector. The open direction can be the rotation angle by which the robot rotates from its current position to the direction of the center line of that sector.
[0103] In other embodiments, such as Figure 10 As shown, step S732 can specifically include the following steps S7321-S7322.
[0104] Step S7321: Determine the target sector based on the openness of each sector area.
[0105] It should be noted that the target sector refers to one of the sector regions selected based on the degree of openness of different sector areas. This sector region can be the sector region S with the largest degree of openness determined by the above formula (3). x Alternatively, the following methods can be used for selection.
[0106] In one embodiment, if step S430 is the first relocation (i.e., the first attempt after a positioning failure), the sector with the largest level of openness is selected as the target sector based on the openness of each sector. If step S430 is not the first relocation (i.e., the number of attempts after a positioning failure is greater than or equal to 2), the openness of each sector is multiplied by a corresponding weight coefficient, and the sector with the largest result is selected as the target sector; wherein, the weight coefficient of a sector farther away from the robot's current direction is smaller.
[0107] This weighting coefficient is used to penalize rotation. After the second repositioning begins, the rotation angle cannot be too large to prevent the robot from returning to its original position. In one embodiment, the weighting coefficient w i as follows:
[0108]
[0109] i represents the i-th sector. Each sector is labeled (S0, S1, ..., S...) in clockwise order. i ,…,S n-1 ).
[0110] Step S7322: Based on the angle of each sector and the sector through which the robot rotates from the current sector to the target sector, determine the rotation angle to the target sector, and obtain the open direction.
[0111] Assume the robot rotates clockwise by an angle θ to reach an open area. The clockwise rotation angle θ is:
[0112]
[0113] Where x represents the target sector number. w0 represents the weight corresponding to sector S0, w1 represents the weight corresponding to sector S1, and so on. Assuming the robot is currently facing sector S0, then w0 to w n-1 The value of decreases, but the sum is 1.
[0114] In one embodiment, if the sector is not divided at equal angles, the angles of all sector areas that the robot passes through from the current sector to the target sector need to be summed to obtain the robot's rotation angle, which can be used as the open direction for rotation.
[0115] The technical solution provided in the above embodiments of this application, after a single positioning failure, collects laser information in the current environment, calculates the most open direction around the robot, and controls it to move a certain distance in that direction before attempting repositioning again. This achieves the function of guiding the robot to move into an open environment, thereby improving the success rate of repositioning. It solves the technical problem in traditional solutions where, after a single repositioning attempt fails, the robot wanders randomly and is prone to getting stuck in corners or narrow areas, resulting in a high failure rate for subsequent repositioning.
[0116] The following are embodiments of the apparatus described in this application, which can be used to execute the positioning method embodiments of the self-moving robot described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the positioning method embodiments of the self-moving robot described in this application.
[0117] Figure 11This is a block diagram illustrating a positioning device for a self-moving robot according to an embodiment of this application. Figure 11 As shown, the device includes: a direction determination module 1110, a distance movement module 1120, and a repositioning module 1130.
[0118] The direction determination module 1110 is used to determine the open direction of the current location when positioning fails.
[0119] The distance movement module 1120 is used to control the robot to move a specified distance along the open direction to reach the second position.
[0120] The repositioning module 1130 is used to reposition at the second position.
[0121] The specific implementation process of the functions and roles of each module in the above-mentioned device can be found in the implementation process of the corresponding steps in the positioning method of the self-moving robot, and will not be repeated here.
[0122] The apparatuses and methods disclosed in the several embodiments provided in this application can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatuses, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0123] In addition, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.
[0124] If a function is implemented as a software module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A positioning method for a self-moving robot, characterized in that, include: If location fails, determine the open direction of the current location; The robot is controlled to move a specified distance along the open direction to reach the second position; Reposition at the second location; Determining the open direction of the current location includes: dividing the area around the current location into multiple fan-shaped regions centered on the current location; determining the sector length of each fan-shaped region based on the length of each laser beam emitted from the current location within the fan-shaped region; and determining the open direction based on the sector length of each fan-shaped region. The step of determining the open space direction based on the sector length of each sector includes: for each sector, obtaining the open space degree of the sector based on the sector length of the surrounding sectors; the sector length and the open space degree are positively correlated; and determining the open space direction based on the open space degree of each sector. The step of determining the openness direction based on the openness of each sector includes: determining the target sector based on the openness of each sector; determining the rotation angle to the target sector based on the angle of each sector and the sector through which the robot rotates from the sector in the current direction to the target sector, thereby obtaining the openness direction; The step of determining the target sector based on the openness of each sector region includes: if the re-positioning is the first re-positioning, the sector region with the largest openness is selected as the target sector; if the re-positioning is not the first re-positioning, the openness of each sector region is multiplied by a corresponding weight coefficient, and the sector region with the largest result is selected as the target sector; wherein, the weight coefficient of the sector region farther away from the robot's current direction is smaller. The weighting coefficient is used to penalize rotations. for: , c Non-zero constants The i represents the i-th sector region. This represents the weight coefficient corresponding to the i-th sector, where each sector is labeled clockwise as follows: , These represent different sector regions.
2. The method according to claim 1, characterized in that, After repositioning at the second location, the method further includes: If repositioning fails, the process of determining the open direction, moving a specified distance along the open direction, and then repositioning is repeated until repositioning is successful or the number of repositioning attempts meets the threshold.
3. The method according to claim 1, characterized in that, The process of dividing the current location into multiple fan-shaped regions centered on the current location includes: Divide the area around the current location into multiple fan-shaped regions with the same angle, centered on the current location.
4. The method according to claim 1, characterized in that, The step of determining the sector length of each sector region based on the length of each laser beam emitted from the current position within that sector region includes: For each sector, based on the length of each laser beam emitted from the current position within the sector, the length of the shortest laser beam is taken as the sector length of the sector.
5. The method according to claim 1, characterized in that, Repositioning at the second location includes: A single frame of laser data is collected at the second location, and the single frame of laser data is matched and calculated with map laser data to determine the relative position of the second location on the map. or; Multiple frames of laser data are collected within a preset range of the second location. The multiple frames of laser data are then matched and calculated with the map laser data to determine the relative position of the second location on the map.
6. A self-moving robot, characterized in that, The self-moving robot includes: processor; Memory used to store processor-executable instructions; The processor is configured to execute the localization method of the self-moving robot according to any one of claims 1-5.
Citation Information
Patent Citations
Relocating method and apparatus of indoor robot
CN106092104A
Robot positioning method, robot and storage medium
CN110605713A
Robot control method and device and robot
CN113001544A