WO2022161315A1 - 机器人路径规划方法、运行方法、机器人以及介质 - Google Patents

机器人路径规划方法、运行方法、机器人以及介质 Download PDF

Info

Publication number
WO2022161315A1
WO2022161315A1 PCT/CN2022/073496 CN2022073496W WO2022161315A1 WO 2022161315 A1 WO2022161315 A1 WO 2022161315A1 CN 2022073496 W CN2022073496 W CN 2022073496W WO 2022161315 A1 WO2022161315 A1 WO 2022161315A1
Authority
WO
WIPO (PCT)
Prior art keywords
distance
cost value
reference trajectory
cost
calculate
Prior art date
Application number
PCT/CN2022/073496
Other languages
English (en)
French (fr)
Inventor
吴翔
张涛
陈俊伟
Original Assignee
深圳市普渡科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市普渡科技有限公司 filed Critical 深圳市普渡科技有限公司
Publication of WO2022161315A1 publication Critical patent/WO2022161315A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions

Definitions

  • the present application relates to the technical field of robot motion control, and in particular, to a robot path planning method, an operation method, a robot, and a medium.
  • the obstacle avoidance path generated by the prior art does not take into account the motion characteristics of the robot.
  • a robot path planning method an operation method, a robot, and a medium are provided.
  • a first aspect of the present application provides a robot path planning method, comprising the following steps:
  • the parameter information includes coordinate information, angle information of each reference trajectory point, and time information of two adjacent reference trajectory points;
  • the parameter information of the plurality of reference trajectory points is dynamically adjusted so that the cost value reaches an optimal value.
  • a second aspect of the present application provides a method for operating a robot.
  • the method includes the above-mentioned robot path planning method, and further includes:
  • the robot is controlled to operate based on the operation information.
  • a third aspect of the present application provides a robot, the robot comprising:
  • the initialization module is set to carry out the initialization of the track to the reference path, obtains the reference track, and the reference track includes a plurality of reference track points;
  • a calculation module configured to calculate the cost value of the reference trajectory based on the parameter information of the plurality of reference trajectory points, the parameter information includes coordinate information, angle information of each reference trajectory point and two adjacent reference trajectories point time information;
  • the adjustment module is configured to dynamically adjust the parameter information of the plurality of reference track points so that the cost value reaches an optimal value.
  • a fourth aspect of the present application provides a robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, the processor implementing the above-mentioned robot path when executing the computer program Steps of the planning method or steps of the robot operating method.
  • a fifth aspect of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, implements the steps of the above-mentioned robot path planning method or the robot operation method. .
  • FIG. 1 is a flowchart of a method for planning a robot path according to an embodiment of the present application
  • FIG. 2 is a specific flowchart of a method for calculating the cost value of the reference trajectory based on parameter information of the multiple reference trajectory points according to an embodiment of the present application;
  • FIG. 3 is a flowchart of a method for operating a robot provided by an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a robot principle module provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram of a robot control and storage architecture provided by an embodiment of the present application.
  • the present application provides a robot path planning method, which specifically includes the following steps.
  • the robot will generate a reference path corresponding to the environmental obstacle and the topological path, which is used to avoid the environmental obstacle and return to the robot.
  • the reference path is a simple path information and does not include specific coordinate information.
  • the reference path can be initialized first, thereby obtaining a reference trajectory
  • the reference trajectory can include a plurality of reference trajectory points, and each reference trajectory includes parameter information, and the parameter information is specifically the reference trajectory point.
  • the reference path is composed of multiple grids, and through initialization, the corresponding grid on the reference path will form a reference track point.
  • the center point of the grid is used as the reference track point
  • the coordinates of the center point are used as the coordinate information of the reference track point.
  • the angle information is the angle information between the connection line between the adjacent reference track points and the X-axis or Y-axis of the entire coordinate system, which changes with the change of the coordinate information, and the time information can be preset in advance. , for example, it can be 0.3S, and in other embodiments, it can also be said to be 0.4S, etc., which is not limited here.
  • the cost value of the reference trajectory is calculated based on parameter information of multiple reference trajectory points. That is, the cost value of the reference track can be calculated by using the reference information of all the reference track points of the entire reference track.
  • FIG. 2 is a schematic flowchart of sub-steps of step S2 in FIG. 1, which specifically includes the following steps:
  • the linear velocity of two adjacent reference trajectory points can be determined through the coordinate information and time information, that is, the distance between any two adjacent reference trajectory points can be calculated through the coordinate information, and then the ratio of the distance to the time can be used to calculate the distance. Get the corresponding linear velocity.
  • the linear velocity refers to the linear velocity from the previous reference trajectory point to the current reference trajectory point.
  • the corresponding angular velocity can be determined by the ratio of the angle information and the time information of two adjacent reference trajectory points.
  • the angular velocity refers to the angular velocity from the previous reference trajectory to the current reference trajectory point.
  • the acceleration of the reference trajectory point at two adjacent points is determined based on the linear velocity, the angular velocity and the time information.
  • the acceleration includes a linear acceleration and an angular acceleration.
  • the ratio of time is obtained, and the angular velocity is obtained by the ratio of the difference between the two adjacent angular velocities and the actual value.
  • a first distance between each reference trajectory point and an environmental obstacle is calculated based on the coordinate information. Similarly, through the coordinate information of each reference trajectory point, the distance value between the reference trajectory point and the environmental obstacle is calculated, and the distance value is used as the first distance.
  • a distance value between each reference trajectory point and the reference path is calculated based on the coordinate information, and the distance value is used as the second distance.
  • the velocity cost value and the angular velocity cost value can be obtained by calculating the cost value. , acceleration cost, time cost, first distance cost, second distance cost and dynamics cost.
  • the speed cost value of the reference trajectory can be calculated by using the linear speed, that is, the speed cost value is obtained by calculating a plurality of linear speeds by using a speed cost function.
  • the speed at which the robot can run should be within a threshold range, such as less than 1.2m/s. If the speed is offset, it indicates that the feasibility of this speed is very low, that is, the cost of reaching is very high, therefore, it can be judged whether the linear speed is within the preset speed range specified in the linear speed cost function, if so, the speed cost value is 0; speed offset, and use the rules of the speed cost function to calculate the speed offset to obtain the speed cost value. Optionally, if the speed offset is larger, the obtained speed cost value is also larger. .
  • the acceleration cost function can also be used to calculate multiple accelerations to obtain the acceleration cost value.
  • the specific performance is to determine whether the acceleration is within the preset acceleration range specified in the acceleration cost function. If so, Then the acceleration cost value is 0. If not, calculate the acceleration offset between the acceleration and the acceleration preset range, and use the rules of the acceleration cost function to calculate the acceleration offset to obtain the acceleration cost value. Similarly, if The larger the acceleration offset, the larger the acceleration cost.
  • the angular velocity cost function is used to calculate multiple angular velocities to obtain the angular velocity cost value.
  • the angular velocity cost value is 0, if not, calculate the angular velocity offset between the angular velocity and the angular velocity preset range, and use the rule of the angular velocity cost function to calculate the angular velocity offset to obtain the angular velocity cost value.
  • the first distance cost function can be used to calculate the first distance to obtain the first distance cost value. Specifically, it is also judged whether the first distance is within the preset range of the first distance specified in the first distance cost function. If If yes, then the first distance cost value is 0, if not, calculate the first distance offset between the first distance and the first distance preset range, and use the rules of the first distance cost function to calculate the first distance A distance offset is obtained to obtain the first distance cost value.
  • the distance of an environmental obstacle closest to the reference trajectory point is selected as the first distance.
  • the distance between each reference trajectory point and the original reference path also needs to be considered.
  • the reference trajectory point should not deviate too much from the reference path, that is, the reference trajectory point should be as close to the reference path as possible, similar to , using the second distance cost function to calculate a plurality of the second distances to obtain the second distance cost value, and determine whether the second distance is located within the second distance preset range specified in the second distance cost function; if so, Then the second distance cost value is 0; if not, calculate the second distance offset between the second distance and the second distance preset range, and use the rules of the second distance cost function to calculate the second distance The offset gets the second distance cost value.
  • the time information is also preset, that is, 0.3S.
  • the time information can also be calculated by the robot through a preset algorithm, that is, every adjacent The time information of the two reference trajectory points is different, so the time also needs to be considered, that is, it cannot be too long or too short.
  • using the time cost function to calculate a plurality of the time information to obtain the time cost value specifically, judging whether the event is within the time preset range specified in the time cost function; if so, the time cost value is 0; if If not, then calculate the time offset between the time information and the time preset range, and use the rule of the time cost function to calculate the time offset to obtain the time cost value.
  • the dynamic cost function can be used to calculate the coordinate information and angular velocity information to obtain the dynamic cost value.
  • the coordinate information can be used to calculate the transverse direction of two adjacent reference trajectory points.
  • Coordinate difference and vertical coordinate difference then calculate the abscissa change information of the two reference trajectory points of the vector according to the acceleration information and the abscissa difference value, and calculate the vertical coordinates of the two reference trajectory points of the vector according to the angular velocity information and the vertical coordinate difference. coordinate change information, and then determine the kinetic cost value based on the difference between the abscissa change information and the vertical coordinate change information.
  • dx refers to the abscissa change information
  • p1 and p2 refer to two adjacent reference trajectory points
  • p2.x refers to the abscissa of the reference trajectory point p2
  • p1.x refers to the abscissa of the reference trajectory point p1
  • dy refers to the vertical coordinate change information
  • p2.y refers to the vertical coordinate of the reference trajectory point p2
  • p1.y refers to the vertical coordinate of the reference trajectory point p1
  • p1.t refers to the angle information of the reference trajectory point p1, p2.
  • t refers to the angle information of the reference track point p2.
  • Cost is the kinetic cost value, which is positively correlated with d, that is, the larger the d, the greater the cost.
  • S22 calculate the sum of at least two of the speed cost value, acceleration cost value, angular velocity cost value, time cost value, dynamics cost value, first distance cost value, and second distance cost value, and use the sum as the said value.
  • the sum of at least any two can be selected as cost value.
  • the sum of the cost value of speed, cost value of acceleration, cost value of angular velocity, time cost value, dynamic cost value, first distance cost value, and second distance cost value is taken as the cost value.
  • each cost value is a constraint on the reference trajectory, and after considering multiple cost values, the constraint on the reference trajectory will become larger and larger.
  • S3 Dynamically adjust the parameter information of the multiple reference trajectory points so that the cost value reaches an optimal value.
  • the reference trajectory After considering the influence of multiple factors (reflected in each cost value) on the reference trajectory, the reference trajectory can be dynamically adjusted, specifically, the reference information of multiple reference trajectory points can be dynamically adjusted, so that the cost value of the reference trajectory can be adjusted dynamically. It tends to be optimized, that is, the cost value becomes smaller, until the cost value reaches the optimal value (the cost value reaches the achievable minimum value).
  • the coordinate information of multiple reference trajectory points is adjusted, and then based on the adjusted coordinate information, the cost value of the entire reference trajectory is recalculated, and the process is repeated until the coordinate information of the reference trajectory whose cost value reaches the minimum value is obtained. . Then these coordinate information is the new reference trajectory.
  • the reference trajectory is calculated together. Carry out constraints, and in the process of adjusting the reference trajectory, make the reference trajectory gradually tend to reach an optimal situation, that is, the best comprehensive situation.
  • the present application also provides a method for operating a robot, which includes the method for planning a path of a robot according to any one of the foregoing embodiments, and further includes the following steps:
  • the reference trajectory corresponding to the cost value reaching the optimal value is obtained according to preset intervals, for example, every 0.1S, the optimal reference trajectory of the wardrobe at the corresponding moment is obtained.
  • the operation information is obtained according to the reference trajectory, where the operation information specifically refers to information such as speed, acceleration, and time corresponding to the reference trajectory.
  • control the robot to run based on the running information That is, the information such as speed, acceleration and time is sent to the lower computer, so that the motor of the robot can output the corresponding torque and drive the robot to run according to the path of the reference trajectory.
  • the robot will calculate the optimal reference trajectory at a preset time interval during the entire operation process, and generate corresponding operation information to control the robot to run. For example, after calculating an optimal reference trajectory, the robot will control the operation from the first reference trajectory point to the second reference trajectory point of the reference trajectory based on the operation information, and the robot will calculate a new optimal reference point. Track, and re-issue running information to control the robot to move, so that the robot can always seek the current optimal reference trajectory during the entire operation process, instead of just running based on a reference trajectory. Therefore, the running process of the real robot can be made smooth, and it can be adjusted and run in real time in a complex multi-obstacle environment, so as to achieve a good running effect.
  • This embodiment provides a robot path planning method, which includes the following steps:
  • the parameter information at least includes the trajectory point speed, acceleration and the distance between each trajectory point and the nearest obstacle;
  • the cost function is constructed.
  • the cost function includes constraints on the parameter information. Through the constraints of the parameter information, a smooth trajectory that conforms to the robot's motion capability is calculated and solved;
  • the constraints based on the parameter information are reconstructed, and the new trajectory that can be run is obtained by solving it again. So as to ensure the continuity between multiple frames of track points.
  • the distance ds between each trajectory point and the nearest obstacle is calculated, and ds>d is satisfied, where d is the desired shortest distance between the robot and the obstacle.
  • d is the desired shortest distance between the robot and the obstacle.
  • a smooth trajectory in line with the robot's movement ability is calculated and solved, specifically: the parameter information trajectory point velocity v, acceleration a and the distance ds between each trajectory point and the nearest obstacle, using the tool g2o Solve, and the result of the solution is the coordinates of each trajectory point.
  • g2o is an open source library, input the above constraints, and through this g2o tool, you can calculate the coordinates of the trajectory points. It can be understood that the trajectory point (x, y, theta, dt) is the variable to be solved, and g2o is a tool for solving multiple equations.
  • the parameter information trajectory point velocity v, acceleration a and the distance between each trajectory point and the nearest obstacle can solve the trajectory point (x, y, theta, dt). Subsequent judgments are made to check whether the solved trajectory satisfies all the constraints set.
  • the path planning method of this embodiment is a process of finding the optimal value, rather than a traditional state space search process. Therefore, as long as there is a feasible solution, a trajectory that meets the requirements can be obtained. Therefore, in narrow and complex areas, the running effect can be improved, the fluency can be improved, and it is in line with the dynamics.
  • the next frame is solved based on the state of the previous frame, so the calculated trajectory and the previous moment are continuous and satisfy the physical motion capability of the robot, thereby improving the fluency of the robot motion.
  • the present application also provides a robot, which includes:
  • the initialization module 101 is configured to initialize the trajectory of the reference path to obtain a reference trajectory, and the reference trajectory includes a plurality of reference trajectory points;
  • the calculation module 102 is configured to calculate the cost value of the reference trajectory based on the parameter information of the multiple reference trajectory points, the parameter information includes coordinate information, angle information of each reference trajectory point and two adjacent reference trajectory points. Time information of track points;
  • the adjustment module 103 is configured to dynamically adjust the parameter information of the multiple reference track points so that the cost value reaches an optimal value.
  • FIG. 5 is an architecture diagram of a control and storage system of a robot provided by an embodiment of the present application.
  • the robot 6 of this embodiment includes a processor 60 , a memory 61 , and a computer program 62 stored in the memory 61 and executable on the processor 60 , such as a path planning method program.
  • the processor 60 executes the computer program 62
  • the steps in each of the above embodiments of the robot path planning method are implemented, for example, steps S1 to S3 shown in FIG. 1 .
  • the processor 60 executes the computer program 62
  • the functions of the modules/units in the foregoing device embodiments for example, the functions of the modules 101 to 103 shown in FIG. 4 are implemented.
  • the computer program 62 may be divided into one or more modules/units, and the one or more modules/units are stored in the memory 61 and executed by the processor 60 to complete the this application.
  • the one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, the instruction segments being arranged to describe the execution of the computer program 62 in the robot 6 .
  • the computer program 62 may be divided into an initialization module 101 , a calculation module 102 , and an adjustment module 103 .
  • the robot 6 may be a computing device such as a desktop computer, a notebook, a handheld computer, and a cloud server.
  • the robot may include, but is not limited to, a processor 60 and a memory 61 .
  • FIG. 5 is only an example of the robot 6, and does not constitute a limitation to the robot 6. It may include more or less components than the one shown, or combine some components, or different components, such as
  • the robot may also include input and output devices, network access devices, buses, and the like.
  • the so-called processor 60 may be a central processing unit (Central Processing Unit, CPU), or other general-purpose processors, digital signal processors (Digital Signal Processors, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
  • the memory 61 may be an internal storage unit of the robot 6 , such as a hard disk or a memory of the robot 6 .
  • the memory 61 can also be an external storage device of the robot 6, such as a plug-in hard disk equipped on the robot 6, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, Flash card (Flash Card) and so on.
  • the memory 61 may also include both an internal storage unit of the robot 6 and an external storage device.
  • the memory 61 is arranged to store the computer program and other programs and data required by the robot.
  • the memory 61 may also be configured to temporarily store data that has been output or will be output.

Abstract

一种机器人路径规划方法、运行方法、机器人以及介质,路径规划方法包括:对参考路径进行轨迹的初始化,得到参考轨迹,参考轨迹包括多个参考轨迹点(S1);基于多个参考轨迹点的参数信息计算参考轨迹的代价值,参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个参考轨迹点的时间信息(S2);对多个参考轨迹点的参数信息进行动态调整以使得代价值达到最优值(S3)。

Description

机器人路径规划方法、运行方法、机器人以及介质
本申请要求于2021年1月26日在中国专利局提交的、申请号为202110106346X、发明名称为“机器人路径规划方法、运行方法、机器人以及介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及机器人运动控制技术领域,尤其涉及一种机器人路径规划方法、运行方法、机器人以及介质。
背景技术
在机器人运行过程中,在机器人的拓扑路径上会出现一些障碍物,机器人会基于这些障碍物对应生成对应的避障路径,但是现有的避障路径往往没有考虑到机器人的运动特性。
技术问题
现有技术生成的避障路径没有考虑到机器人的运动特性。
技术解决方案
为解决上述技术问题,根据本申请的各种实施例,提供一种机器人路径规划方法、运行方法、机器人以及介质。
本申请第一方面提供一种机器人路径规划方法,包括以下步骤:
对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
本申请第二方面提供一种机器人的运行方法,所述方法包括上述的机器人路径规划方法,还包括:
按照预设间隔获取对应时刻所述代价值达到最优值的参考轨迹;
根据所述参考轨迹获取运行信息;
基于所述运行信息控制机器人进行运行。
本申请第三方面提供一种机器人,所述机器人包括:
初始化模块,设置为对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包 括多个参考轨迹点;
计算模块,设置为基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
调整模块,设置为对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
本申请第四方面提供一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述机器人路径规划方法的步骤或所述机器人运行方法的步骤。
本申请第五方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述机器人路径规划方法的步骤或机器人运行方法的步骤。
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征和优点将从说明书、附图以及权利要求书变得明显。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他实施例的附图。
图1为本申请实施例的一种机器人路径规划方法的流程图;
图2为本申请实施例的基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值的方法具体流程图;
图3是本申请实施例提供的机器人的运行方法流程图;
图4是本申请实施例提供的机器人原理模块图;
图5是本申请实施例提供的机器人控制与存储架构示意图。
本发明的实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施例。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全 面。
除非另有定义,本文所使用的所有的技术和科学术语与属于发明的技术领域的技术人员通常理解的含义相同。本文中在发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例1
如图1所示,本申请提供一种机器人路径规划方法,该方法具体包括如下步骤。
S1,对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点。
可选地,机器人在运行过程中,如果其拓扑路径(运行路径)上出现环境障碍物,则机器人会根据环境障碍物和拓扑路径对应生成一条参考路径,用于规避该环境障碍物并回到拓扑路径上继续运行,但是参考路径是一条简单的路径信息,没有包括具体的坐标信息。
可选地,可以先对参考路径进行归集的初始化,从而得到参考轨迹,该参考轨迹可以包括有多个参考轨迹点,每一参考轨迹均包括有参数信息,该参数信息具体为参考轨迹点的坐标信息、角度信息以及相邻两个参考轨迹点的时间信息。
在可选实施例中,参考路径是由多个栅格组成的,通过进行初始化,参考路径上对应的栅格则会形成一个参考轨迹点。具体地,将该栅格的中心点作为参考轨迹点,并将中心点的坐标作为参考轨迹点的坐标信息。角度信息则是相邻参考轨迹点之间的连线与整个坐标系的X轴或Y轴的夹角信息,是随着坐标信息的变化而变化的,时间信息则可以是提前进行预设的,如可以是0.3S,在其他实施例中,也可以说0.4S等等,这里不做限定。
S2,基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值。
可选的,基于多个参考轨迹点的参数信息计算该参考轨迹的代价值。即可以通过整个参考轨迹所有的参考轨迹点的参考信息来对该参考轨迹的代价值进行计算。
请参阅图2,图2是图1步骤S2的子步骤流程示意图,具体包括如下步骤:
S21,基于多个参考轨迹点的参数信息计算参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二距离代价值。
通过多个参考轨迹点的参数信息来计算该参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二距离代价值。
具体地,可以通过坐标信息和时间信息确定两个相邻的参考轨迹点的线速度,即任意的两个相邻的参考轨迹点通过坐标信息可以计算其距离,随后通过距离与时间的比值可以得到对应的线速度。该线速度是指前一个参考轨迹点到当前参考轨迹点的线速度。通过对每两个相邻的参考轨迹点进行计算,则可以获取多个线速度。
类似的,可以通过相邻两个参考轨迹点的角度信息与时间信息的比值来确定对应的角速度。类似的,该角速度是指前一个参考轨迹到当前参考轨迹点的角速度。通过对每两个相邻的参考轨迹点进行计算,则可以获取多个角速度。
基于所述线速度、所述角速度和时间信息确定相邻两点所述参考轨迹点的加速度,可选地,加速度包括线加速度和角加速度,该线加速度通过相邻的两个线速度差与时间的比值获得,角速度通过相邻的两个角速度差与实际的比值获得。
基于坐标信息计算每一参考轨迹点和环境障碍物的第一距离。类似的,通过每一参考轨迹点的坐标信息,计算该参考轨迹点与环境障碍物的距离值,并将该距离值作为第一距离。
基于坐标信息计算每一参考轨迹点和参考路径的距离值,并将该距离值作为第二距离。
可选的,在获取到坐标信息、角度信息、时间信息、线速度信息、角速度信息、加速度信息、第一距离以及第二距离后,可以通过代价值的计算从而获得速度代价值、角速度代价值、加速度代价值、时间代价值、第一距离代价值、第二距离代价值以及动力学代价值。
在可选实施例中,可以通过线速度来计算参考轨迹的速度代价值,即采用速度代价函数来计算多个线速度得到该速度代价值。
可选的,基于机器人的运动特色,机器人能够运行的速度应该是在一个阈值范围内,例如小于1.2m/s,如果偏移这个速度,这表明这个速度的可行性很低,即达到的代价很高,因此,可以判断线速度是否是位于线速度代价函数中规定的速度预设范围内,如果是,则该速度代价值为0,如果不是,则计算该线速度和速度预设范围的速度偏移量,并利用速度代价函数的规则来计算所述速度偏移量得到所述速度代价值,可选的,如果该速度偏移量越大,则所得到的速度代价值也越大。
类似的,考虑到机器人所允许的加速度范围,也可以采用加速度代价函数计算多个加速度得到加速度代价值,具体表现为,判断加速度是否位于加速度代价函数中规定的加速度预设范围内,如果是,则加速度代价值为0,如果不是,则计算加速度与加速度预设范围的加速度偏移量,并利用加速度代价函数的规则来计算所述加速度偏移量得到所述加速度代价值,类似的,如果加速度偏移量越大,则加速度代价值也越大。
类似的,考虑到机器人的所允许的角速度范围,采用角速度代价函数来计算多个角速度得到角速度代价值,类似的,如果角速度位于角速度代价函数中规定的角速度预设范围内,则该角速度代价值为0,如果不是,则计算角速度与所述角速度预设范围的角速度偏移量,并利用角速度代价函数的规则来计算所述角速度偏移量得到所述角速度代价值。
在其他实施例中,考虑到参考路径点和环境障碍物的距离,如一般来说,参考路径点与环境障碍物越远,则表明该参考路径点越安全,即参考路径点离环境障碍物越远越好,如果小于某一个阈值,例如0.5m,则表面该参考路径点与环境障碍物可能比较容易相碰撞。基于该思路,则可以利用第一距离代价函数来计算第一距离得到第一距离代价值,具体也是判断该第一距离是否位于第一距离代价函数中规定的第一距离预设范围内,如果是,则第一距离代价值为0,如果不是,则计算第一距离与所述第一距离预设范围的第一距离偏移量,并利用第一距离代价函数的规则来计算所述第一距离偏移量得到所述第一距离代价值。
可选的,如果是多个环境障碍物,则选取与该参考轨迹点最近的一个环境障碍物的距离作为第一距离。
在其他考量中,还需要考虑到每一个参考轨迹点和原来的参考路径的距离,一般来说,参考轨迹点不能太过于偏离参考路径,即参考轨迹点应该离参考路径越近越好,类似的,采用第二距离代价函数计算多个所述第二距离得到所述第二距离代价值,判断第二距离是否位于第二距离代价函数中规定的第二距离预设范围内;如果是,则第二距离代价值为0;如果不是,则计算第二距离与所述第二距离预设范围的第二距离偏移量,并利用第二距离代价函数的规则来计算所述第二距离偏移量得到所述第二距离代价值。
还有包括时间上的考量,在本实施例中,时间信息也是预设,即为0.3S,在其他实施例中,时间信息也可以是机器人通过预设算法计算得到的,即每相邻的两个参考轨迹点的时间信息是不同的,因此还需要考虑到时间,即不能过长也不能过短。类似的,采用时间代价函数计算多个所述时间信息得到所述时间代价值,具体为判断事件是否位于时间代价函数中规定的时间预设范围内;如果是,则时间代价值为0;如果不是,则计算时间信息与所述时间预设范围的时间偏移量,并利用时间代价函数的规则来计算所述时间偏移量得到所述时间代价值。
在其他场景上,还需要着重考虑到整个参考轨迹的平滑性,即处于机器人运行的特色,更希望机器人是以弧形段来运行,而非多个直线段所组成的运行轨迹。此时则需要考虑到参考轨迹的动力学代价值,具体可以采用动力学代价函数来计算坐标信息、角速度信息得到动力代价值,具体可以通过坐标信息来计算相邻的两个参考轨迹点的横坐标差值和竖坐 标差值,随后根据加速度信息以及横坐标差值计算得到向量两个参考轨迹点的横坐标变化信息,根据角速度信息以及竖坐标差值计算得到向量两个参考轨迹点的竖坐标变化信息,随后基于所述横坐标变化信息和所述竖坐标变化信息的差值确定所述动力学代价值。
具体地,通过如下公式进行计算:
dx=p2.x-p1.x;
dy=p2.y-p1.y;
c1=[cos(p1.t)+cos(p2.t)]*dy;
c2=[sin(p1.t)+sin(p2.t)]*dx;
d=fabs(c1-c2);
cost=f(d)。
其中,dx是指横坐标变化信息,p1和p2是指相邻的两个参考轨迹点,p2.x是指参考轨迹点p2的横坐标,p1.x是指参考轨迹点p1的横坐标,dy是指竖坐标变化信息,p2.y是指参考轨迹点p2的竖坐标,p1.y是指参考轨迹点p1的竖坐标,p1.t则是指参考轨迹点p1的角度信息,p2.t则是指参考轨迹点p2的角度信息。cost则是动力学代价值,其和d成正相关的关系,即d越大则cost越大。
S22,计算所述速度代价值、加速度代价值、角速度代价值、时间代价值、动力学代价值、第一距离代价值、第二距离代价值中至少两个的和,并将所述和作为所述代价值。
在获取到速度代价值、加速度代价值、角速度代价值、时间代价值、动力学代价值、第一距离代价值、第二距离代价值后,则可以选取至少任意两个的和作为代价值。
在最优选的实施例中,则将速度代价值、加速度代价值、角速度代价值、时间代价值、动力学代价值、第一距离代价值、第二距离代价值的和作为代价值。
可选的,每一个代价值均是对参考轨迹的一个约束,在考虑到多个代价值后,对参考轨迹的约束也会越来越大。
S3,对多个参考轨迹点的参数信息进行动态调整以使得代价值达到最优值。
考虑到多个因素(反映在各个代价值)对参考轨迹的影响后,可以对参考轨迹进行动态调整,具体是对多个参考轨迹点的参考信息进行动态调整,从而使得该参考轨迹的代价值趋向于优化,即代价值变小,直到该代价值达到最优(代价值达到可实现的最小值)。
具体地,对多个参考轨迹点的坐标信息进行调整,随后基于调整后的坐标信息,重新计算整个参考轨迹的代价值,一直循环该过程,直到获取代价值达到最小值的参考轨迹的坐标信息。随后这些坐标信息即为新的参考轨迹。
上述实施例中,通过速度代价值、加速度代价值、角速度代价值、时间代价值、动力 学代价值、第一距离代价值、第二距离代价值等不同考量的因素,一起来对参考轨迹来进行约束,并在对参考轨迹的调整过程中,使得参考轨迹逐渐趋向于达到一个最优的情况,即综合性最好的情况。
如图3,本申请还提供一种机器人的运行方法,该方法包括上述实施例中任一项所述的机器人的路径规划方法,且具体还包括如下步骤:
S4,按照预设间隔获取对应时刻所述代价值达到最优值的参考轨迹。
按照预设间隔获取对应所述代价值达到最优值的参考轨迹,例如每隔0.1S,则获取对应时刻的衣柜最优参考轨迹。
S5,根据所述参考轨迹获取运行信息。
随后根据参考轨迹获取运行信息,这里的运行信息具体是指该参考轨迹对应的速度、加速度以及时间等等信息。
S6,基于所述运行信息控制机器人进行运行。
随后基于运行信息控制机器人进行运行。即将速度、加速度以及时间等信息下发给下位机,从而使得机器人的电机输出对应的扭矩,并带动机器人可以按照参考轨迹的路径进行运行。
在可选场景中,机器人在整个运行过程中,会按照预设的时间间隔计算一次最优的参考轨迹,并生成对应的运行信息控制机器人进行运行。如当计算出一条最优的参考轨迹后,机器人基于运行信息控制运行在该参考轨迹的第一个参考轨迹点到第二个参考轨迹点的过程中,机器人又会计算出新的一个最优参考轨迹,并重新下发运行信息,控制机器人进行运动,从而可以保持机器人在整个运行过程中,一直会寻求当前最优的一个参考轨迹,而不是仅仅基于一个参考轨迹进行运行。从而可以使得真个机器人的运行过程中流畅,并可以在复杂的多障碍物环境中实时进行调整运行,从而达到良好的运行效果。
实施例2
本实施例提供一种机器人路径规划方法,包括以下步骤:
对参考路径进行轨迹的初始化,得到参考轨迹;
计算参考轨迹的参数信息,参数信息至少包括轨迹点速度、加速度和每一个轨迹点与最近障碍物的距离;
根据实时环境,构建代价函数,代价函数包含对参数信息的约束,通过参数信息的约束,计算求解出一条平滑的符合机器人运动能力的轨迹;
下一时刻,基于上一时刻的轨迹和当前时刻的环境,重新构建基于参数信息的约束, 再次求解得到可运行的新的轨迹,之后依次循环,得出整个平滑的符合机器人运动能力的轨迹,从而保证轨迹点多帧之间的连续。
其中,对参考路径进行轨迹的初始化,得到参考轨迹,具体为:根据参考路径的相邻两个路径点(x1,y1)、(x2,y2),得到相邻两个路径点之间的角度theta,其中theta=arctan(y2-y1)/(x2-x1),再设定相邻两个路径点的运动时间dt,得到参考轨迹基本信息(x,y,theta,dt),比如,可以假设dt=0.25s。因此路径只包含坐标,轨迹在此基础上包含坐标以及时间,对初始轨迹进行初始化可以避免后续机器人控制算法优化过程中的局部最优解导致机器卡顿的问题。
其中,计算轨迹点速度具体为:通过任意2个相邻轨迹点的距离ds,以及运动时间dt,计算2点之间的速度v=ds/dt,其中,
Figure PCTCN2022073496-appb-000001
所得到的v满足机器人的运动性能,即v(min)<v<v(max),其中v(min)、v(max)机器人运动性能上下限。
其中,计算轨迹点加速度具体为:通过任意3个相邻轨迹点,计算前2个相邻点的距离为ds1,后2个相邻点的距离为ds2,则计算加速度a=((ds2/dt)-(ds1/dt))/dt,所得到的的a满足a(min)<a<a(max),其中a(min)、a(max)为机器人运动性能上下限。
其中,计算每一个轨迹点与最近障碍物的距离ds,满足ds>d,其中d为期望的机器人与障碍物的最近距离。先遍历所有障碍物,计算轨迹点距离每个障碍物的距离ds1、ds2……dsN后,然后通过排序算法排序后,得到最近障碍物的距离ds。
其中,通过参数信息的约束,计算求解出一条平滑的符合机器人运动能力的轨迹,具体为:将参数信息轨迹点速度v、加速度a和每一个轨迹点与最近障碍物的距离ds,使用工具g2o进行求解,求解的结果为每一个轨迹点的坐标。g2o是一个开源的库,把上述约束输入进去,通过这个g2o工具,就能计算得到轨迹点坐标。可以理解成,轨迹点(x,y,theta,dt)为待求解变量,g2o是一个求解多方程式的工具,把参数信息轨迹点速度v、加速度a和每一个轨迹点与最近障碍物的距离ds输入方程式,就能求解出轨迹点(x,y,theta,dt)。后续通过判断,来检查求解的轨迹是否满足设定的所有约束。
综上,本实施例的路径规划方法,是一个求解最优值得过程,而非传统的状态空间搜索过程。因此只要存在可行解,便可以得到一条满足要求的轨迹。从而在狭窄、复杂的区域能提升运行效果,提升流畅度,符合动力学。通过构建约束,限制解空间,并且同时下一帧是基于上一帧的状态求解,因此计算得到的轨迹和上一时刻是连续且满足机器人物理运动能力的,从而提升机器人运动的流畅性。
实施例3
如图4所示,本申请还提供一种机器人,所述机器人包括:
初始化模块101,设置为对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
计算模块102,设置为基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
调整模块103,设置为对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
图5是本申请一实施例提供的机器人的控制与存储系统架构图。如图5所示,该实施例的机器人6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62,例如路径规划方法程序。所述处理器60执行所述计算机程序62时实现上述各个机器人路径规划方法实施例中的步骤,例如图1所示的步骤S1至S3。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块101至103的功能。
示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段设置为描述所述计算机程序62在所述机器人6中的执行过程。例如,所述计算机程序62可以被分割成初始化模块101、计算模块102、调整模块103。
所述机器人6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述机器人可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图5仅仅是机器人6的示例,并不构成对机器人6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述机器人6的内部存储单元,例如机器人6的硬盘或内存。所述存储器61也可以是所述机器人6的外部存储设备,例如所述机器人6上配备的插接式 硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述机器人6的内部存储单元也包括外部存储设备。所述存储器61设置为存储所述计算机程序以及所述机器人所需的其它程序和数据。所述存储器61还可以设置为暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (19)

  1. 一种机器人路径规划方法,包括以下步骤:
    对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
    基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
    对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
  2. 根据权利要求1所述的路径规划方法,所述基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,包括:
    基于所述多个参考轨迹点的参数信息计算所述参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二距离代价值;
    计算所述速度代价值、加速度代价值、角速度代价值、时间代价值、动力学代价值、第一距离代价值、第二距离代价值中至少两个的和,并将所述和作为所述代价值。
  3. 根据权利要求2所述的路径规划方法,所述基于所述多个参考轨迹点的参数信息计算所述参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二距离代价值,包括:
    基于所述坐标信息和所述时间信息确定相邻两个所述参考轨迹点的线速度;
    基于所述角度信息和所述时间信息确定相邻两个所述参考轨迹点的角速度;
    基于所述线速度、所述角速度以及所述时间信息确定相邻两点所述参考轨迹点的加速度;
    基于所述坐标信息计算每一所述参考轨迹点和环境障碍物的第一距离;
    基于所述坐标信息计算每一所述参考轨迹点与所述参考路径的第二距离;
    基于所述线速度来计算所述参考轨迹的速度代价值和/或基于所述角速度来计算所述参考轨迹的角速度代价值和/或基于所述加速度来计算所述参考轨迹的加速度代价值和/或基于所述第一距离来计算所述参考轨迹的第一距离代价值和/或基于所述第二距离来计算所述参考轨迹的第二距离代价值和/或基于所述时间信息来计算所述参考轨迹的时间代价值和/或基于所述坐标信息和角度信息计算所述参考轨迹的动力学代价值。
  4. 根据权利要求3所述的路径规划方法,所述基于所述线速度、角速度、加速度、第一距离、第二距离以及所述时间信息来计算所述参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二 距离代价值,包括:
    采用速度代价函数计算多个所述线速度得到所述速度代价值;
    采用加速度代价函数计算多个所述加速度得到所述加速度代价值;
    采用角速度代价函数计算多个角速度得到所述角速度代价值;
    采用第一距离代价函数计算所述第一距离得到所述第一距离代价值;
    采用第二距离代价函数计算多个所述第二距离得到所述第二距离代价值;
    采用时间代价函数计算所述多个时间得到时间距离代价值;
    采用动力学代价函数计算所述坐标信息、角度信息得到动力学代价值。
  5. 根据权利要求4所述的路径规划方法,所述采用速度代价函数计算多个所述线速度得到所述速度代价值,包括:
    判断所述线速度是否位于所述速度代价函数中规定的速度预设范围内;
    如果是,则所述速度代价值为0;
    如果不是,则计算所述线速度与所述速度预设范围的速度偏移量,并利用所述速度代价函数的规则来计算所述速度偏移量得到所述速度代价值;
    所述采用加速度代价函数计算多个所述加速度得到所述加速度代价值,包括:
    判断所述加速度是否位于所述加速度代价函数中规定的加速度预设范围内;
    如果是,则所述加速度代价值为0;
    如果不是,则计算所述加速度与所述加速度预设范围的加速度偏移量,并利用所述加速度代价函数的规则来计算所述加速度偏移量得到所述加速度代价值;
    所述采用角速度代价函数计算多个角速度得到所述角速度代价值,包括:
    判断所述角速度是否位于所述角速度代价函数中规定的角速度预设范围内;
    如果是,则所述角速度代价值为0;
    如果不是,则计算所述角速度与所述角速度预设范围的角速度偏移量,并利用所述角速度代价函数的规则来计算所述角速度偏移量得到所述角速度代价值;
    所述采用第一距离代价函数计算所述第一距离得到所述第一距离代价值,包括:
    判断所述第一距离是否位于所述第一距离代价函数中规定的第一距离预设范围内;
    如果是,则所述第一距离代价值为0;
    如果不是,则计算所述第一距离与所述第一距离预设范围的第一距离偏移量,并利用所述第一距离代价函数的规则来计算所述第一距离偏移量得到所述第一距离代价值;
    所述采用第二距离代价函数计算多个所述第二距离得到所述第二距离代价值,包括:
    判断所述第二距离是否位于所述第二距离代价函数中规定的第二距离预设范围内;
    如果是,则所述第二距离代价值为0;
    如果不是,则计算所述第二距离与所述第二距离预设范围的第二距离偏移量,并利用所述第二距离代价函数的规则来计算所述第二距离偏移量得到所述第二距离代价值。
  6. 根据权利要求4所述的路径规划方法,所述采用动力学代价函数计算所述坐标信息、角度信息得到动力学代价值,包括:
    根据坐标信息计算得到相邻两个所述参考轨迹点的横坐标差值和竖坐标差值;
    根据角度信息以及横坐标差值计算得到相邻两个所述参考轨迹点的横坐标变化信息;
    根据角度信息以及竖坐标差值计算得到相邻两个所述参考轨迹点的竖坐标变化信息;
    基于所述横坐标变化信息和所述竖坐标变化信息的差值确定所述动力学代价值。
  7. 根据权利要求1所述的路径规划方法,所述对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值,包括:
    动态对所述多个参考轨迹点的坐标信息进行调整,以获取使得所述代价值达到最小值的参考轨迹的坐标信息。
  8. 一种机器人的运行方法,所述方法包括权利要求1-7中任一项所述的机器人路径规划方法,还包括:
    按照预设间隔获取对应时刻所述代价值达到最优值的参考轨迹;
    根据所述参考轨迹获取运行信息;
    基于所述运行信息控制机器人进行运行。
  9. 一种机器人,所述机器人包括:
    初始化模块,设置为对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
    计算模块,设置为基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
    调整模块,设置为对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
  10. 一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现:
    对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
    基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
    对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
  11. 如权利要求10所述的机器人,所述处理器执行所述计算机程序时还实现:
    对参考路径进行轨迹的初始化,得到参考轨迹,所述参考轨迹包括多个参考轨迹点;
    基于所述多个参考轨迹点的参数信息计算所述参考轨迹的代价值,所述参数信息包括每一参考轨迹点的坐标信息、角度信息以及相邻两个所述参考轨迹点的时间信息;
    对所述多个参考轨迹点的参数信息进行动态调整以使得所述代价值达到最优值。
  12. 如权利要求11所述的机器人,所述处理器执行所述计算机程序时还实现:
    基于所述多个参考轨迹点的参数信息计算所述参考轨迹的速度代价值和/或加速度代价值和/或角速度代价值和/或时间代价值和/或动力学代价值和/或第一距离代价值和/或第二距离代价值;
    计算所述速度代价值、加速度代价值、角速度代价值、时间代价值、动力学代价值、第一距离代价值、第二距离代价值中至少两个的和,并将所述和作为所述代价值。
  13. 如权利要求12所述的机器人,所述处理器执行所述计算机程序时还实现:
    基于所述坐标信息和所述时间信息确定相邻两个所述参考轨迹点的线速度;
    基于所述角度信息和所述时间信息确定相邻两个所述参考轨迹点的角速度;
    基于所述线速度、所述角速度以及所述时间信息确定相邻两点所述参考轨迹点的加速度;
    基于所述坐标信息计算每一所述参考轨迹点和环境障碍物的第一距离;
    基于所述坐标信息计算每一所述参考轨迹点与所述参考路径的第二距离;
    基于所述线速度来计算所述参考轨迹的速度代价值和/或基于所述角速度来计算所述参考轨迹的角速度代价值和/或基于所述加速度来计算所述参考轨迹的加速度代价值和/或基于所述第一距离来计算所述参考轨迹的第一距离代价值和/或基于所述第二距离来计算所述参考轨迹的第二距离代价值和/或基于所述时间信息来计算所述参考轨迹的时间代价值和/或基于所述坐标信息和角度信息计算所述参考轨迹的动力学代价值。
  14. 如权利要求13所述的机器人,所述处理器执行所述计算机程序时还实现:
    采用速度代价函数计算多个所述线速度得到所述速度代价值;
    采用加速度代价函数计算多个所述加速度得到所述加速度代价值;
    采用角速度代价函数计算多个角速度得到所述角速度代价值;
    采用第一距离代价函数计算所述第一距离得到所述第一距离代价值;
    采用第二距离代价函数计算多个所述第二距离得到所述第二距离代价值;
    采用时间代价函数计算所述多个时间得到时间距离代价值;
    采用动力学代价函数计算所述坐标信息、角度信息得到动力学代价值。
  15. 如权利要求14所述的机器人,所述处理器执行所述计算机程序时还实现:
    判断所述线速度是否位于所述速度代价函数中规定的速度预设范围内;
    如果是,则所述速度代价值为0;
    如果不是,则计算所述线速度与所述速度预设范围的速度偏移量,并利用所述速度代价函数的规则来计算所述速度偏移量得到所述速度代价值;
    所述采用加速度代价函数计算多个所述加速度得到所述加速度代价值,包括:
    判断所述加速度是否位于所述加速度代价函数中规定的加速度预设范围内;
    如果是,则所述加速度代价值为0;
    如果不是,则计算所述加速度与所述加速度预设范围的加速度偏移量,并利用所述加速度代价函数的规则来计算所述加速度偏移量得到所述加速度代价值;
    所述采用角速度代价函数计算多个角速度得到所述角速度代价值,包括:
    判断所述角速度是否位于所述角速度代价函数中规定的角速度预设范围内;
    如果是,则所述角速度代价值为0;
    如果不是,则计算所述角速度与所述角速度预设范围的角速度偏移量,并利用所述角速度代价函数的规则来计算所述角速度偏移量得到所述角速度代价值;
    所述采用第一距离代价函数计算所述第一距离得到所述第一距离代价值,包括:
    判断所述第一距离是否位于所述第一距离代价函数中规定的第一距离预设范围内;
    如果是,则所述第一距离代价值为0;
    如果不是,则计算所述第一距离与所述第一距离预设范围的第一距离偏移量,并利用所述第一距离代价函数的规则来计算所述第一距离偏移量得到所述第一距离代价值;
    所述采用第二距离代价函数计算多个所述第二距离得到所述第二距离代价值,包括:
    判断所述第二距离是否位于所述第二距离代价函数中规定的第二距离预设范围内;
    如果是,则所述第二距离代价值为0;
    如果不是,则计算所述第二距离与所述第二距离预设范围的第二距离偏移量,并利用所述第二距离代价函数的规则来计算所述第二距离偏移量得到所述第二距离代价值。
  16. 如权利要求14所述的机器人,所述处理器执行所述计算机程序时还实现:
    根据坐标信息计算得到相邻两个所述参考轨迹点的横坐标差值和竖坐标差值;
    根据角度信息以及横坐标差值计算得到相邻两个所述参考轨迹点的横坐标变化信息;
    根据角度信息以及竖坐标差值计算得到相邻两个所述参考轨迹点的竖坐标变化信息;
    基于所述横坐标变化信息和所述竖坐标变化信息的差值确定所述动力学代价值。
  17. 如权利要求10所述的机器人,所述处理器执行所述计算机程序时还实现:
    动态对所述多个参考轨迹点的坐标信息进行调整,以获取使得所述代价值达到最小值的参考轨迹的坐标信息。
  18. 如权利要求10所述的机器人,所述处理器执行所述计算机程序时还实现:
    按照预设间隔获取对应时刻所述代价值达到最优值的参考轨迹;
    根据所述参考轨迹获取运行信息;
    基于所述运行信息控制机器人进行运行。
  19. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述机器人路径规划方法的步骤或权利要求8所述的机器人运行方法的步骤。
PCT/CN2022/073496 2021-01-26 2022-01-24 机器人路径规划方法、运行方法、机器人以及介质 WO2022161315A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110106346.X 2021-01-26
CN202110106346.XA CN114791730A (zh) 2021-01-26 2021-01-26 机器人路径规划方法、运行方法、机器人以及介质

Publications (1)

Publication Number Publication Date
WO2022161315A1 true WO2022161315A1 (zh) 2022-08-04

Family

ID=82460668

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/073496 WO2022161315A1 (zh) 2021-01-26 2022-01-24 机器人路径规划方法、运行方法、机器人以及介质

Country Status (2)

Country Link
CN (1) CN114791730A (zh)
WO (1) WO2022161315A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116372927A (zh) * 2023-04-06 2023-07-04 深圳市康士达科技有限公司 一种机器人示教的轨迹生成方法、装置、设备和介质
CN116449767A (zh) * 2023-04-12 2023-07-18 武汉金顿激光科技有限公司 一种半自动激光清洗轨迹修正方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130035773A1 (en) * 2011-08-05 2013-02-07 Yebin Wang Method for Generating Trajectories for Motor Controlled Actuators
CN106774329A (zh) * 2016-12-29 2017-05-31 大连理工大学 一种基于椭圆切线构造的机器人路径规划方法
CN110375753A (zh) * 2019-07-04 2019-10-25 丰图科技(深圳)有限公司 地图匹配方法、装置、服务器及存储介质
CN111121812A (zh) * 2019-12-31 2020-05-08 深圳前海达闼云端智能科技有限公司 一种路径优化方法、电子设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130035773A1 (en) * 2011-08-05 2013-02-07 Yebin Wang Method for Generating Trajectories for Motor Controlled Actuators
CN106774329A (zh) * 2016-12-29 2017-05-31 大连理工大学 一种基于椭圆切线构造的机器人路径规划方法
CN110375753A (zh) * 2019-07-04 2019-10-25 丰图科技(深圳)有限公司 地图匹配方法、装置、服务器及存储介质
CN111121812A (zh) * 2019-12-31 2020-05-08 深圳前海达闼云端智能科技有限公司 一种路径优化方法、电子设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116372927A (zh) * 2023-04-06 2023-07-04 深圳市康士达科技有限公司 一种机器人示教的轨迹生成方法、装置、设备和介质
CN116372927B (zh) * 2023-04-06 2024-03-22 深圳市康士达科技有限公司 一种机器人示教的轨迹生成方法、装置、设备和介质
CN116449767A (zh) * 2023-04-12 2023-07-18 武汉金顿激光科技有限公司 一种半自动激光清洗轨迹修正方法及系统
CN116449767B (zh) * 2023-04-12 2023-09-15 武汉金顿激光科技有限公司 一种半自动激光清洗轨迹修正方法及系统

Also Published As

Publication number Publication date
CN114791730A (zh) 2022-07-26

Similar Documents

Publication Publication Date Title
WO2022161315A1 (zh) 机器人路径规划方法、运行方法、机器人以及介质
CN107980108B (zh) 机器人运动轨迹规划方法及相关装置
WO2018126354A1 (zh) 机器人运动轨迹规划方法及相关装置
CN106651987B (zh) 路径规划方法及装置
Van Den Berg et al. Roadmap-based motion planning in dynamic environments
Willms et al. Real-time robot path planning via a distance-propagating dynamic system with obstacle clearance
Snape et al. Reciprocal collision avoidance and navigation for video games
CN111331591B (zh) 一种机器人控制方法及装置
CN109683617A (zh) 一种自动驾驶方法、装置及电子设备
CN112965443A (zh) 一种裁床拐角轨迹跟踪高精度插值控制方法
CN112540602A (zh) 一种机器人局部路径的优化方法及机器人
CN110238841B (zh) 障碍物的避让方法及装置
Rousseas et al. Trajectory planning in unknown 2d workspaces: A smooth, reactive, harmonics-based approach
Rahman et al. An adaptive agent-specific sub-optimal bounding approach for multi-agent path finding
CN113821317B (zh) 一种边云协同的微服务调度方法、装置及设备
CN113495565A (zh) 一种机器人及其轨迹规划和平滑过渡方法、系统及介质
Jansch-Porto et al. Decentralized control with moving-horizon linear switched systems: Synthesis and testbed implementation
WO2024041647A1 (zh) 一种笛卡尔空间的轨迹规划方法及装置
US20110288830A1 (en) Finite State Machine Diagram Generation
Alsaedi et al. The mutual visibility problem for fat robots
Marbate et al. Role of voronoi diagram approach in path planning
CN115576332B (zh) 一种任务级多机器人协同运动规划系统与方法
WO2020093254A1 (zh) 机器人的运动控制方法、控制系统和存储装置
CN112506203A (zh) 一种机器人运动动态反馈方法及系统
TWI688844B (zh) 用於控制機械設備的控制裝置與方法

Legal Events

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

Ref document number: 22745190

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE