CN114740854A - Robot obstacle avoidance control method and device - Google Patents
Robot obstacle avoidance control method and device Download PDFInfo
- Publication number
- CN114740854A CN114740854A CN202210373750.8A CN202210373750A CN114740854A CN 114740854 A CN114740854 A CN 114740854A CN 202210373750 A CN202210373750 A CN 202210373750A CN 114740854 A CN114740854 A CN 114740854A
- Authority
- CN
- China
- Prior art keywords
- robot
- position information
- obstacle
- coordinate system
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000004422 calculation algorithm Methods 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 230000004888 barrier function Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000033001 locomotion Effects 0.000 abstract description 13
- 230000035945 sensitivity Effects 0.000 abstract description 9
- 230000004044 response Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 13
- 230000008447 perception Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0253—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Electromagnetism (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
The invention discloses a robot obstacle avoidance control method and device, and relates to the technical field of computers. One embodiment of the method comprises: acquiring image data by using image acquisition equipment of the robot at the current moment, and acquiring first position information of the robot in a world coordinate system; detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected; at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system; and calculating second position information of the obstacle in the robot coordinate system at the next moment according to the first position information, the first position information and the second position information so that the robot can avoid the obstacle according to the second position information. The method and the device eliminate the influence caused by the movement of the robot in the time period from the current moment to the next moment, improve the response speed of obstacle avoidance of the robot and improve the sensitivity of obstacle avoidance.
Description
Technical Field
The invention relates to the technical field of computers, in particular to a robot obstacle avoidance control method and device.
Background
The robot usually uses a three-dimensional (3D) camera to sense and avoid obstacles in the moving process, specifically, the 3D camera generates data through calculation and transmits the data back to the robot, and the robot detects the position of the obstacle through a sensing algorithm based on the data transmitted back by the 3D camera so as to avoid the obstacles based on the position when the robot moves.
In the process of implementing the invention, the prior art at least has the following problems:
due to the limitations of hardware computing capacity and data transmission, data received by the robot is lagged, and the time consumed by the perception algorithm is added, so that the position of the detected obstacle is lagged compared with the real situation, the robot cannot avoid the obstacle in time, and the obstacle avoidance sensitivity is low.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method and an apparatus for controlling obstacle avoidance for a robot, where the method calculates a position of an obstacle relative to the robot at a next moment based on a position of the obstacle relative to the robot at the current moment, a pose of the robot at the current moment and a pose of the robot at the next moment after a delay, and avoids an obstacle according to the position, so as to eliminate an influence caused by movement of the robot during a period from the current moment to the next moment, improve a response speed of obstacle avoidance for the robot, and improve an obstacle avoidance sensitivity.
In order to achieve the above object, according to an aspect of the embodiments of the present invention, a robot obstacle avoidance control method is provided.
The robot obstacle avoidance control method provided by the embodiment of the invention comprises the following steps: acquiring image data by using image acquisition equipment of the robot at the current moment, and acquiring first position information of the robot in a world coordinate system; detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected; at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system; and calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information, so that the robot avoids the obstacle according to the second position information.
Optionally, the calculating, according to the first position information, and the second position information, second position information of the obstacle in a robot coordinate system at a next time includes: according to the first position information, performing coordinate transformation on the first position information to obtain third position information of the barrier in a world coordinate system; and performing coordinate transformation on the third position information according to the second position information to obtain second position information of the obstacle in a robot coordinate system at the next moment.
Optionally, the first location information comprises first coordinates of a plurality of points on the obstacle; the coordinate transformation is performed on the first position information according to the first position information to obtain third position information of the obstacle in a world coordinate system, and the method comprises the following steps: according to the first position information, coordinate transformation is respectively carried out on the first coordinates of the plurality of points to obtain second coordinates of the plurality of points in a world coordinate system; and taking the second coordinates corresponding to the points as third position information of the obstacle in a world coordinate system.
Optionally, the next time is a time after the first position information is calculated; the coordinate transformation is performed on the third position information according to the second position information to obtain second position information of the obstacle in a robot coordinate system at the next moment, and the method comprises the following steps: according to the second position and posture information, respectively carrying out coordinate transformation on second coordinates corresponding to the multiple points to obtain third coordinates of the multiple points in a robot coordinate system at the next moment; and taking the third coordinates corresponding to the points as second position information of the obstacle in the robot coordinate system at the next moment.
Optionally, the calculating first position information of the obstacle in the robot coordinate system at the current moment includes: traversing points on the obstacle, and calculating a first coordinate of the traversed points under a robot coordinate system at the current moment; and taking first coordinates corresponding to the multiple points on the obstacle as first position information of the obstacle in a robot coordinate system at the current moment.
Optionally, the first position and orientation information and the second position and orientation information both include position information and orientation information of the robot at corresponding time, where the position information is acquired based on a odometer, or is acquired by positioning the robot based on a positioning algorithm; the attitude information is obtained by reading the IMU unit.
Optionally, the method further comprises: in case the obstacle is not detected, the step of capturing image data with the image capturing device of the robot at the present time is performed again.
In order to achieve the above object, according to another aspect of the embodiments of the present invention, an obstacle avoidance control apparatus for a robot is provided.
The robot obstacle avoidance control device of the embodiment of the invention comprises: the first acquisition module is used for acquiring image data by using image acquisition equipment of the robot at the current moment and acquiring first attitude information of the robot in a world coordinate system; the position calculation module is used for detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected; the second acquisition module is used for acquiring second attitude information of the robot in a world coordinate system at the next moment after the current moment; and the obstacle avoidance control module is used for calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information so as to enable the robot to avoid obstacles according to the second position information.
Optionally, the obstacle avoidance control module is further configured to perform coordinate transformation on the first position information according to the first position information to obtain third position information of the obstacle in a world coordinate system; and performing coordinate transformation on the third position information according to the second position information to obtain second position information of the obstacle in a robot coordinate system at the next moment.
Optionally, the first location information comprises first coordinates of a plurality of points on the obstacle; the obstacle avoidance control module is further used for respectively carrying out coordinate transformation on the first coordinates of the plurality of points according to the first position information to obtain second coordinates of the plurality of points in a world coordinate system; and taking the second coordinates corresponding to the points as third position information of the obstacle in a world coordinate system.
Optionally, the next time is a time after the first position information is calculated; the obstacle avoidance control module is further configured to perform coordinate transformation on the second coordinates corresponding to the multiple points according to the second position and posture information, so as to obtain third coordinates of the multiple points in the robot coordinate system at the next moment; and taking the third coordinates corresponding to the points as second position information of the obstacle in the robot coordinate system at the next moment.
Optionally, the position calculating module is further configured to traverse points on the obstacle, and calculate a first coordinate of the traversed point in the robot coordinate system at the current time; and taking first coordinates corresponding to the multiple points on the obstacle as first position information of the obstacle in a robot coordinate system at the current moment.
Optionally, the first position and orientation information and the second position and orientation information both include position information and orientation information of the robot at corresponding time, where the position information is acquired based on a odometer, or is acquired by positioning the robot based on a positioning algorithm; the attitude information is obtained by reading the IMU unit.
Optionally, the apparatus further comprises: and the repeated execution module is used for executing the step of acquiring the image data by using the image acquisition equipment of the robot at the current moment again under the condition that the obstacle is not detected.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided an electronic apparatus.
An electronic device of an embodiment of the present invention includes: one or more processors; and the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors realize the robot obstacle avoidance control method of the embodiment of the invention.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided a computer-readable medium.
A computer-readable medium of an embodiment of the present invention stores thereon a computer program, and the computer program, when executed by a processor, implements a robot obstacle avoidance control method of an embodiment of the present invention.
One embodiment of the above invention has the following advantages or benefits: the method comprises the steps of calculating the position of the barrier relative to the robot at the next moment based on the position of the barrier relative to the robot at the current moment, the pose of the robot at the current moment and the pose of the robot at the lagged next moment, and avoiding the barrier according to the position, so that the influence caused by the movement of the robot in the time period from the current moment to the next moment is eliminated, the response speed of the robot in avoiding the barrier is increased, and the barrier avoiding sensitivity is improved.
Based on the principle that coordinates of the obstacle under the world coordinate system at different moments are unchanged, the second position information of the obstacle under the robot coordinate system at the next moment is calculated, the calculation mode is simple, and time consumption required by calculation is reduced. The position of the obstacle in a world coordinate system is conveniently determined by respectively carrying out coordinate transformation on the first coordinates of a plurality of points on the obstacle. And the moment after the first position information is calculated is taken as the next moment, the position information of the obstacle is compensated and calculated, so that the influence caused by the motion of the robot during the time delay period can be eliminated subsequently, and the problem of perception lag caused by time delay is solved.
By traversing the points on the obstacle, the positions of all the points on the obstacle under the robot coordinate system can be ensured, and subsequent obstacle avoidance control is facilitated. The pose of the robot is acquired through the odometer and the IMU unit or the positioning algorithm and the IMU unit, and the adaptability of obstacle avoidance control is improved. Under the condition that the obstacle is not detected, the robot obstacle avoidance control method is repeatedly executed, so that the motion displacement of the robot during the time delay period can be further eliminated, and the problem of perception lag caused by time delay is solved.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
fig. 1 is a schematic diagram of main steps of a robot obstacle avoidance control method according to an embodiment of the invention;
fig. 2 is a schematic main flow chart of a robot obstacle avoidance control method according to still another embodiment of the present invention;
fig. 3 is a main flow chart of a robot obstacle avoidance control method according to another embodiment of the invention;
fig. 4 is a schematic diagram of main modules of a robot obstacle avoidance control apparatus according to an embodiment of the present invention;
FIG. 5 is an exemplary system architecture diagram in which embodiments of the present invention may be applied;
FIG. 6 is a schematic block diagram of a computer apparatus suitable for use in implementing an electronic device of an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a schematic diagram illustrating main steps of a robot obstacle avoidance control method according to an embodiment of the present invention. As shown in fig. 1, the robot obstacle avoidance control method according to the embodiment of the present invention mainly includes the following steps:
step S101: the method comprises the steps of collecting image data by using image collecting equipment of the robot at the current moment, and obtaining first position information of the robot in a world coordinate system. The robot calls the image acquisition equipment at the current moment, and triggers the image acquisition equipment to acquire surrounding image data. Meanwhile, the pose information of the robot at the current moment under the world coordinate system is recorded, and for convenience of distinguishing, the pose information is subsequently called as first pose information.
Step S102: and detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment when the obstacle is detected. The robot detects an obstacle in the image data through a perception algorithm based on the acquired image data. And under the condition that the obstacle is successfully detected, further calculating the position of the obstacle relative to the robot at the current moment, wherein the position is the first position information of the obstacle at the current moment in the robot coordinate system.
Step S103: and at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system. And selecting a moment lagging behind the current moment as a next moment, recording the pose information of the robot in the world coordinate system at the next moment, and for convenience of distinguishing, subsequently calling the pose information as second pose information.
Step S104: and calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information, so that the robot avoids the obstacle according to the second position information.
In the step, based on the principle that coordinates of the obstacle in the world coordinate system at different moments are not changed, the position of the robot at the next moment of the obstacle is calculated, and the position is second position information of the obstacle in the robot coordinate system at the next moment. Subsequently, the second position information is input into a robot control algorithm to avoid the obstacle, so that the influence caused by the movement of the robot in a time period from the current moment to the next moment is eliminated, the response speed of obstacle avoidance of the robot is improved, and the obstacle avoidance sensitivity is improved.
Fig. 2 is a main flow chart of a robot obstacle avoidance control method according to still another embodiment of the present invention. As shown in fig. 2, the robot obstacle avoidance control method according to the embodiment of the present invention is executed by a robot, and mainly includes the following steps:
step S201: and calling image acquisition equipment to acquire image data at the current moment, and acquiring first pose information of the robot at the current moment in a world coordinate system. The image acquisition device is used for acquiring surrounding image information during the movement of the robot, and can be an industrial camera, a depth camera and the like.
The robot is at the current moment (which can be denoted as t)0Moment), calling an image acquisition device, and triggering the image acquisition device to start shooting a frame of image data; is recorded at t at the same time0The first pose information of the robot at the moment in the world coordinate system can be expressed as (x)0,y0,θ0)。
In practical application, the first attitude information comprises the robot at t0Position information (x) of time0,y0) And attitude information theta0Wherein the position information (x)0,y0) The method can be acquired based on a speedometer or positioned on the robot based on a positioning algorithm; attitude information theta0Is t0The course angle of the robot in the world coordinate system at that moment can be obtained by reading an Inertial Measurement Unit (IMU).
Step S202: detecting the obstacle of the image data through a perception algorithm, judging whether the obstacle is successfully detected, and if the obstacle is successfully detected, executing a step S203; otherwise, step S201 is performed.
After receiving the image data returned by the image acquisition equipment, the robot inputs the image data into a perception algorithm of the robot to detect obstacles of the image data. If the obstacle is detected in the execution process of the robot obstacle avoidance control method of the current wheel, executing the following steps S203-S206; if no obstacle is detected, the process returns to step S201, and the robot obstacle avoidance control of the next round is performed.
Step S203: and calculating first position information of the obstacle at the current moment in the robot coordinate system through a perception algorithm. And if the obstacle is detected from the image data, continuously calculating first position information of the obstacle in the robot coordinate system at the current moment by a perception algorithm.
In one embodiment, when the first position information is calculated, points on an obstacle need to be traversed, and a first coordinate of the traversed points in a robot coordinate system at the current moment is calculated; and then, taking the first coordinates corresponding to the plurality of points on the obstacle as the first position information of the obstacle at the current moment in the robot coordinate system. It follows that the first position information comprises first coordinates of a plurality of points on the obstacle.
Let one of the points of the obstacle be denoted as p, the first coordinate of the p point in the robot coordinate system at the current moment can be denoted as p (x, y).
Step S204: and at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system. Selecting a time after the current time as the next time (which can be recorded as t)1Time of day) and recorded at t1The second position information of the robot in the world coordinate system at the moment can be expressed as (x)1,y1,θ1)。
In practical application, the second position information comprises the robot at t1Position information (x) of time1,y1) And attitude information theta1Likewise, position information (x)1,y1) The method can be acquired based on a speedometer or positioned on the robot based on a positioning algorithm; attitude information theta1Is t1The course angle of the robot in the world coordinate system at any moment can be obtained by reading the IMU unit.
Step S205: and calculating second position information of the obstacle in the robot coordinate system at the next moment according to the first position information, the first position information and the second position information. This step is used to offset the position of the obstacle relative to the robot and the robot's own displacement to remove t0Time to t1Changes in relative pose caused by robot motion during a moment.
Specifically, firstly, according to the first position information, coordinate transformation is carried out on the first position information to obtain third position information of the barrier in a world coordinate system; and then, according to the second position information, carrying out coordinate transformation on the third position information to obtain second position information of the obstacle in a robot coordinate system at the next moment.
In the embodiment, when the third position information is calculated, the first coordinates of a plurality of points on the obstacle are respectively subjected to coordinate transformation according to the first position information to obtain second coordinates of the plurality of points in a world coordinate system; and then, taking the second coordinates corresponding to the points as third position information of the obstacle in a world coordinate system.
When second position information is calculated, coordinate transformation is respectively carried out on second coordinates corresponding to a plurality of points on the obstacle according to the second position and posture information to obtain third coordinates of the plurality of points in a robot coordinate system at the next moment; and then, taking the third coordinates corresponding to the points as second position information of the obstacle in the robot coordinate system at the next moment.
To calculate p point t1For example, a third coordinate (denoted as p (x ', y')) of the robot coordinate system at the time point is assumed to be stationary in the world coordinate system, and since the coordinate of the point p in the world coordinate system is not changed, the following formula can be obtained:
the above formula represents t0Coordinate of point p at time point in world coordinate system and t1The coordinates of the point p at the time point in the world coordinate system are the same. Due to (x) in the formula0,y0,θ0)、(x1,y1,θ1) P (x, y) are known quantities, so p point t can be calculated1The third coordinate p (x ', y') of the moment in the robot coordinate system.
Although the present embodiment assumes that the obstacle is stationary, in practical applications, it is not necessary to consider whether the obstacle is moving or stationary, and even if the obstacle is moving, the present embodiment can eliminate the problem of lag due to the movement of the robot. Converting each point of the obstacle according to the formula to obtain the calculation resultNew coordinates of the obstacle, now eliminated at t0Time to t1The relative pose of the robot changes at all times.
Step S206: and inputting the second position information into a robot control algorithm to avoid obstacles. After the step is finished, step S201 may be continuously executed to perform the next round of robot obstacle avoidance control.
Fig. 3 is a main flowchart of a robot obstacle avoidance control method according to another embodiment of the present invention. As shown in fig. 3, the robot obstacle avoidance control method according to the embodiment of the present invention is executed by a robot, and the robot includes an odometer and an IMU unit, and mainly includes the following steps:
step S301: and calling a 3D camera to acquire image data at the current moment, and acquiring first pose information of the robot at the current moment in a world coordinate system through a speedometer and an IMU (inertial measurement unit). The robot calls a 3D camera at the current moment and triggers the 3D camera to start shooting a frame of image data; and meanwhile, the first attitude information of the robot in a world coordinate system at the current moment is obtained by reading the data of the odometer and the IMU unit at the current moment.
Step S302: detecting the obstacle of the image data through a perception algorithm, judging whether the obstacle is successfully detected, and executing a step S303 if the obstacle is successfully detected; otherwise, step S301 is executed. The specific implementation of this step is shown in step S202, which is not described herein.
Step S303: and calculating first position information of the obstacle at the current moment in the robot coordinate system through a perception algorithm. The specific implementation of this step is shown in step S203, which is not described herein again.
Step S304: and at the next moment after the first position information is calculated, acquiring second position and posture information of the robot in a world coordinate system through the odometer and the IMU unit. In this embodiment, the next time is a time after the first position information is calculated.
Step S305: and calculating second position information of the obstacle in the robot coordinate system at the next moment according to the first position information, the first position information and the second position information. The specific implementation of this step is shown in step S205, which is not described herein again.
Step S306: and inputting the second position information into a robot control algorithm to avoid obstacles, and then executing step S301. After the obstacle avoidance control of the current round is finished, the obstacle avoidance control of the robot of the next round can be carried out.
According to the robot obstacle avoidance control method, the time after the first position information is calculated is used as the next time, and then the position information of the obstacle is compensated and calculated, so that the influence caused by robot motion during a delay period (namely, all delays corresponding to hardware computing capacity, data transmission limitation and sensing algorithm time consumption in the process of sensing obstacle avoidance) can be eliminated, and the problems that the obstacle avoidance is not timely and the sensitivity is reduced due to the fact that a 3D camera is used for sensing the obstacle in the moving process of the mobile robot and the delay detection result is delayed are solved.
Fig. 4 is a schematic diagram of main modules of a robot obstacle avoidance control device according to an embodiment of the present invention. As shown in fig. 4, the obstacle avoidance control apparatus 400 of the robot according to the embodiment of the present invention mainly includes:
the first obtaining module 401 is configured to collect image data at a current time by using an image collecting device of the robot, and obtain first pose information of the robot in a world coordinate system. The robot calls the image acquisition equipment at the current moment, and triggers the image acquisition equipment to acquire surrounding image data. Meanwhile, the pose information of the robot at the current moment in the world coordinate system, namely the first pose information, is recorded.
A position calculating module 402, configured to detect an obstacle in the image data, and calculate first position information of the obstacle in a robot coordinate system at the current time when the obstacle is detected. The robot detects an obstacle in the image data through a perception algorithm based on the acquired image data. And under the condition that the obstacle is successfully detected, further calculating the position of the obstacle relative to the robot at the current moment, wherein the position is the first position information of the obstacle at the current moment in the robot coordinate system.
A second obtaining module 403, configured to obtain second pose information of the robot in the world coordinate system at a next time after the current time. And selecting a moment lagging behind the current moment as a next moment, and recording pose information of the robot at the next moment in the world coordinate system, namely second pose information.
And an obstacle avoidance control module 404, configured to calculate second position information of the obstacle in a robot coordinate system at the next time according to the first position information, and the second position information, so that the robot avoids an obstacle according to the second position information.
The module calculates the position of the robot at the next moment of the obstacle based on the principle that the coordinates of the obstacle at different moments under the world coordinate system are unchanged, and the position is second position information of the obstacle at the next moment under the robot coordinate system. Subsequently, the second position information is input into a robot control algorithm to avoid the obstacle, so that the influence caused by the movement of the robot in a time period from the current moment to the next moment is eliminated, the response speed of obstacle avoidance of the robot is improved, and the obstacle avoidance sensitivity is improved.
In addition, the robot obstacle avoidance control apparatus 400 according to the embodiment of the present invention may further include: and repeatedly executing a module (not shown in fig. 4) for executing the step of acquiring the image data with the image acquisition apparatus of the robot at the current time again in case that the obstacle is not detected.
From the above description, it can be seen that the position of the obstacle relative to the robot at the next moment is calculated based on the position of the obstacle relative to the robot at the current moment, the position of the obstacle relative to the robot at the current moment and the robot pose at the lagged next moment, and obstacle avoidance is performed according to the position, so that the influence caused by the movement of the robot in the time period from the current moment to the next moment is eliminated, the response speed of obstacle avoidance of the robot is increased, and the obstacle avoidance sensitivity is improved.
Fig. 5 shows an exemplary system architecture 500 to which the robot obstacle avoidance control method or the robot obstacle avoidance control apparatus according to the embodiment of the present invention may be applied.
As shown in fig. 5, the system architecture 500 may include an image capture device 501, a network 502, and a robot 503. Network 502 is used to provide a medium for a communication link between image capture device 501 and robot 503.
A user may interact with the robot 503 over the network 502 using the image capture device 501 to receive or send messages or the like. The image capture device 501 may be a variety of electronic devices with image capture functionality, including but not limited to industrial cameras.
The robot 503 may be a terminal product providing various services, and may call the image acquisition device 501 to acquire image data, detect an obstacle, calculate second position information of the obstacle, and perform processing such as obstacle avoidance.
It should be noted that the robot obstacle avoidance control method provided in the embodiment of the present application is generally executed by the robot 503, and accordingly, the robot obstacle avoidance control device is generally disposed in the robot 503.
It should be understood that the number of image capturing devices, networks, and robots in fig. 5 is merely illustrative. There may be any number of image capture devices, networks, and robots, as desired for implementation.
The invention also provides an electronic device and a computer readable medium according to the embodiment of the invention.
The electronic device of the present invention includes: one or more processors; and the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors realize the robot obstacle avoidance control method provided by the embodiment of the invention.
The computer readable medium of the present invention stores thereon a computer program, which when executed by a processor implements a robot obstacle avoidance control method according to an embodiment of the present invention.
Referring now to FIG. 6, shown is a block diagram of a computer system 600 suitable for use with the electronic device implementing an embodiment of the present invention. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 6, the computer system 600 includes a Central Processing Unit (CPU)601 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)602 or a program loaded from a storage section 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data necessary for the operation of the computer system 600 are also stored. The CPU 601, ROM 602, and RAM 603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
The following components are connected to the I/O interface 605: an input portion 606 including a keyboard, a mouse, and the like; an output portion 607 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage section 608 including a hard disk and the like; and a communication section 609 including a network interface card such as a LAN card, a modem, or the like. The communication section 609 performs communication processing via a network such as the internet. A driver 610 is also connected to the I/O interface 605 as needed. A removable medium 611 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 610 as necessary, so that the computer program read out therefrom is mounted in the storage section 608 as necessary.
In particular, the processes described above with respect to the main step diagrams may be implemented as computer software programs, according to embodiments of the present disclosure. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program containing program code for performing the method illustrated in the main step diagram. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 609, and/or installed from the removable medium 611. The computer program performs the above-described functions defined in the system of the present invention when executed by the Central Processing Unit (CPU) 601.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor comprises a first acquisition module, a position calculation module, a second acquisition module and an obstacle avoidance control module. The names of these modules do not in some cases constitute a limitation on the module itself, and for example, the first acquiring module may also be described as a "module that acquires image data with an image capturing apparatus of a robot at the present time and acquires first pose information of the robot in a world coordinate system".
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise: acquiring image data by using image acquisition equipment of the robot at the current moment, and acquiring first position information of the robot in a world coordinate system; detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected; at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system; and calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information, so that the robot avoids the obstacle according to the second position information.
According to the technical scheme of the embodiment of the invention, the position of the obstacle relative to the robot at the next moment is calculated based on the position of the obstacle relative to the robot at the current moment, the position of the obstacle relative to the robot at the current moment and the position of the robot at the lagged next moment, and obstacle avoidance is carried out according to the position, so that the influence caused by the movement of the robot in the time period from the current moment to the next moment is eliminated, the response speed of obstacle avoidance of the robot is increased, and the obstacle avoidance sensitivity is improved.
The product can execute the method provided by the embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the method provided by the embodiment of the present invention.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (10)
1. A robot obstacle avoidance control method is characterized by comprising the following steps:
acquiring image data by using image acquisition equipment of the robot at the current moment, and acquiring first position information of the robot in a world coordinate system;
detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected;
at the next moment after the current moment, acquiring second attitude information of the robot in a world coordinate system;
and calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information, so that the robot avoids the obstacle according to the second position information.
2. The method of claim 1, wherein the calculating second position information of the obstacle in a robot coordinate system at a next time instant according to the first position information, and the second position information comprises:
according to the first position information, performing coordinate transformation on the first position information to obtain third position information of the barrier in a world coordinate system;
and performing coordinate transformation on the third position information according to the second position information to obtain second position information of the obstacle in a robot coordinate system at the next moment.
3. The method of claim 2, wherein the first location information comprises first coordinates of a plurality of points on the obstacle;
the coordinate transformation is performed on the first position information according to the first position information to obtain third position information of the obstacle in a world coordinate system, and the method comprises the following steps:
according to the first position information, coordinate transformation is respectively carried out on the first coordinates of the plurality of points to obtain second coordinates of the plurality of points in a world coordinate system;
and taking the second coordinates corresponding to the points as third position information of the obstacle in a world coordinate system.
4. The method according to claim 3, wherein the next time is a time after the first position information is calculated;
the coordinate transformation is performed on the third position information according to the second position information to obtain second position information of the obstacle in a robot coordinate system at the next moment, and the method comprises the following steps:
according to the second position and attitude information, coordinate transformation is respectively carried out on second coordinates corresponding to the multiple points to obtain third coordinates of the multiple points in a robot coordinate system at the next moment;
and taking the third coordinates corresponding to the points as second position information of the obstacle in the robot coordinate system at the next moment.
5. The method of claim 1, wherein the calculating the first position information of the obstacle in the robot coordinate system at the current moment comprises:
traversing points on the obstacle, and calculating a first coordinate of the traversed points under a robot coordinate system at the current moment;
and taking first coordinates corresponding to the multiple points on the obstacle as first position information of the obstacle in a robot coordinate system at the current moment.
6. The method of claim 1, wherein the first pose information and the second pose information each comprise position information and pose information for the robot at a respective time, wherein,
the position information is acquired based on a speedometer, or the robot is positioned based on a positioning algorithm; the attitude information is obtained by reading the IMU unit.
7. The method according to any one of claims 1 to 6, further comprising:
in case the obstacle is not detected, the step of capturing image data with the image capturing device of the robot at the present time is performed again.
8. The utility model provides a barrier controlling means is kept away to robot which characterized in that includes:
the first acquisition module is used for acquiring image data by using image acquisition equipment of the robot at the current moment and acquiring first attitude information of the robot in a world coordinate system;
the position calculation module is used for detecting an obstacle of the image data, and calculating first position information of the obstacle in a robot coordinate system at the current moment under the condition that the obstacle is detected;
the second acquisition module is used for acquiring second attitude information of the robot in a world coordinate system at the next moment after the current moment;
and the obstacle avoidance control module is used for calculating second position information of the obstacle in a robot coordinate system at the next moment according to the first position information, the first position information and the second position information so as to enable the robot to avoid obstacles according to the second position information.
9. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-7.
10. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-7.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210373750.8A CN114740854A (en) | 2022-04-11 | 2022-04-11 | Robot obstacle avoidance control method and device |
PCT/CN2022/140986 WO2023197668A1 (en) | 2022-04-11 | 2022-12-22 | Obstacle avoidance control method and apparatus for robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210373750.8A CN114740854A (en) | 2022-04-11 | 2022-04-11 | Robot obstacle avoidance control method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114740854A true CN114740854A (en) | 2022-07-12 |
Family
ID=82281283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210373750.8A Pending CN114740854A (en) | 2022-04-11 | 2022-04-11 | Robot obstacle avoidance control method and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114740854A (en) |
WO (1) | WO2023197668A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023197668A1 (en) * | 2022-04-11 | 2023-10-19 | 北京京东乾石科技有限公司 | Obstacle avoidance control method and apparatus for robot |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN119292270B (en) * | 2024-09-30 | 2025-07-01 | 天津工业大学 | Rapid limited time two-division formation obstacle avoidance control method for time-lapse mobile robot cluster |
CN120335458B (en) * | 2025-06-13 | 2025-08-26 | 杭州泛嘉科技有限公司 | Robot obstacle avoidance method and device suitable for dynamic obstacle |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008210036A (en) * | 2007-02-23 | 2008-09-11 | Toyota Motor Corp | Obstacle detection device and obstacle detection method |
US20110153137A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunications Research Institute | Method of generating spatial map using freely travelling robot, method of calculating optimal travelling path using spatial map, and robot control device performing the same |
WO2015024407A1 (en) * | 2013-08-19 | 2015-02-26 | 国家电网公司 | Power robot based binocular vision navigation system and method based on |
CN106114095A (en) * | 2016-06-27 | 2016-11-16 | 中国石油大学(华东) | A kind of amphibious sniffing robot |
CN111152266A (en) * | 2020-01-09 | 2020-05-15 | 安徽宇润道路保洁服务有限公司 | Control method and system of cleaning robot |
CN111751824A (en) * | 2020-06-24 | 2020-10-09 | 杭州海康汽车软件有限公司 | Method, device and equipment for detecting obstacles around vehicle |
CN111798489A (en) * | 2020-06-29 | 2020-10-20 | 北京三快在线科技有限公司 | Feature point tracking method, device, medium and unmanned device |
US20200359867A1 (en) * | 2017-11-08 | 2020-11-19 | Hangzhou Ezviz Software Co., Ltd. | Determining Region Attribute |
CN112560769A (en) * | 2020-12-25 | 2021-03-26 | 北京百度网讯科技有限公司 | Method for detecting obstacle, electronic device, road side device and cloud control platform |
CN113703448A (en) * | 2021-08-19 | 2021-11-26 | 深圳亿嘉和科技研发有限公司 | Ackerman chassis obstacle avoidance control method based on ultrasonic waves |
CN113885513A (en) * | 2021-10-25 | 2022-01-04 | 北京歌锐科技有限公司 | Medical equipment position placing method, system and device |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10278333B2 (en) * | 2014-05-26 | 2019-05-07 | Institute Of Automation Chinese Academy Of Sciences | Pruning robot system |
CN105953798B (en) * | 2016-04-19 | 2018-09-18 | 深圳市神州云海智能科技有限公司 | The pose of mobile robot determines method and apparatus |
CN107885209B (en) * | 2017-11-13 | 2020-08-21 | 浙江工业大学 | An Obstacle Avoidance Method Based on Dynamic Window and Virtual Target Point |
CN112462769A (en) * | 2020-11-25 | 2021-03-09 | 深圳市优必选科技股份有限公司 | Robot positioning method and device, computer readable storage medium and robot |
CN113268055B (en) * | 2021-04-07 | 2023-01-13 | 北京拓疆者智能科技有限公司 | Obstacle avoidance control method and device for engineering vehicle and mechanical equipment |
CN114740854A (en) * | 2022-04-11 | 2022-07-12 | 北京京东乾石科技有限公司 | Robot obstacle avoidance control method and device |
-
2022
- 2022-04-11 CN CN202210373750.8A patent/CN114740854A/en active Pending
- 2022-12-22 WO PCT/CN2022/140986 patent/WO2023197668A1/en unknown
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008210036A (en) * | 2007-02-23 | 2008-09-11 | Toyota Motor Corp | Obstacle detection device and obstacle detection method |
US20110153137A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunications Research Institute | Method of generating spatial map using freely travelling robot, method of calculating optimal travelling path using spatial map, and robot control device performing the same |
WO2015024407A1 (en) * | 2013-08-19 | 2015-02-26 | 国家电网公司 | Power robot based binocular vision navigation system and method based on |
CN106114095A (en) * | 2016-06-27 | 2016-11-16 | 中国石油大学(华东) | A kind of amphibious sniffing robot |
US20200359867A1 (en) * | 2017-11-08 | 2020-11-19 | Hangzhou Ezviz Software Co., Ltd. | Determining Region Attribute |
CN111152266A (en) * | 2020-01-09 | 2020-05-15 | 安徽宇润道路保洁服务有限公司 | Control method and system of cleaning robot |
CN111751824A (en) * | 2020-06-24 | 2020-10-09 | 杭州海康汽车软件有限公司 | Method, device and equipment for detecting obstacles around vehicle |
CN111798489A (en) * | 2020-06-29 | 2020-10-20 | 北京三快在线科技有限公司 | Feature point tracking method, device, medium and unmanned device |
CN112560769A (en) * | 2020-12-25 | 2021-03-26 | 北京百度网讯科技有限公司 | Method for detecting obstacle, electronic device, road side device and cloud control platform |
CN113703448A (en) * | 2021-08-19 | 2021-11-26 | 深圳亿嘉和科技研发有限公司 | Ackerman chassis obstacle avoidance control method based on ultrasonic waves |
CN113885513A (en) * | 2021-10-25 | 2022-01-04 | 北京歌锐科技有限公司 | Medical equipment position placing method, system and device |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023197668A1 (en) * | 2022-04-11 | 2023-10-19 | 北京京东乾石科技有限公司 | Obstacle avoidance control method and apparatus for robot |
Also Published As
Publication number | Publication date |
---|---|
WO2023197668A1 (en) | 2023-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114740854A (en) | Robot obstacle avoidance control method and device | |
EP2812770B1 (en) | Image processing device, and computer program product | |
KR102462799B1 (en) | Method and apparatus for estimating pose | |
CN111325796A (en) | Method and apparatus for determining pose of vision device | |
CN111209978A (en) | Three-dimensional visual repositioning method and device, computing equipment and storage medium | |
CN112818898B (en) | Model training method and device and electronic equipment | |
JP2019537023A (en) | Positioning method and device | |
JP7351892B2 (en) | Obstacle detection method, electronic equipment, roadside equipment, and cloud control platform | |
CN110728622A (en) | Fisheye image processing method and device, electronic equipment and computer readable medium | |
CN113496533A (en) | Sticker processing method and device | |
CN112873212A (en) | Grab point detection method and device, electronic equipment and storage medium | |
CN113587928A (en) | Navigation method, navigation device, electronic equipment, storage medium and computer program product | |
CN113758481A (en) | Grid map generation method, device, system, storage medium and electronic equipment | |
CN116079697B (en) | Monocular vision servo method, device, equipment and medium based on image | |
CN117518189A (en) | Laser radar-based camera processing method and device, electronic equipment and medium | |
CN112558036B (en) | Method and device for outputting information | |
CN115152200A (en) | Camera frame rate adjustment method, device, electronic device and storage medium | |
CN119105383A (en) | Robot control method, device, equipment, storage medium and product | |
CN112489224B (en) | Image drawing method, device, readable medium and electronic device | |
CN112880675B (en) | Pose smoothing method and device for visual positioning, terminal and mobile robot | |
CN117193525A (en) | Throwing interaction method of three-dimensional space, head-mounted display device and readable medium | |
KR20210050997A (en) | Method and apparatus for estimating pose, computer-readable storage medium and computer program for controlling the holder device | |
CN117788659A (en) | Method, device, electronic equipment and storage medium for rendering image | |
WO2023025181A1 (en) | Image recognition method and apparatus, and electronic device | |
CN111417016A (en) | A pose estimation method, server and network device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |