WO2021248797A1 - 基于b样条曲线的路径规划方法、运动控制方法及系统 - Google Patents
基于b样条曲线的路径规划方法、运动控制方法及系统 Download PDFInfo
- Publication number
- WO2021248797A1 WO2021248797A1 PCT/CN2020/127658 CN2020127658W WO2021248797A1 WO 2021248797 A1 WO2021248797 A1 WO 2021248797A1 CN 2020127658 W CN2020127658 W CN 2020127658W WO 2021248797 A1 WO2021248797 A1 WO 2021248797A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- spline
- control
- spline curve
- path
- points
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004364 calculation method Methods 0.000 claims abstract description 21
- 239000011159 matrix material Substances 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 6
- 230000017105 transposition Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000001914 filtration Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 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/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Definitions
- the present invention relates to the technical field of path planning and control of robots, in particular to a path planning method, motion control method and system based on a B-spline curve suitable for AGV.
- the main output content is the control points and the number of splines, and the path can be calculated based on this.
- the automatic guiding device walks according to the path and approaching the path infinitely.
- the control and positioning algorithm due to the mechanical parameters of the automatic guiding device itself, the control and positioning algorithm, and the influence of the entire system, there is an error between the automatic guiding device and the path. Yes, but it will try to control the error within a reasonable range, so that the error between the automatic guidance device and the position of the target point when it reaches the target point is within the allowable range.
- the drawing of the spline curve lies in the control points of the spline curve, but when the control points of the spline curve are manually controlled, the curvature of the spline curve may be too large, which will cause the AGV to deflect too fast during operation and cause unnecessary losses.
- the present invention provides a path planning method, motion control method and system based on B-spline curve, which can dynamically select type value points according to the B-spline path dynamic planning, with less selection of type value points.
- the control points can be calculated according to the type value points, and the calculation process is simple.
- the vehicle speed is adjusted according to the curvature, and the angular rate is adjusted according to the speed of the trolley.
- the PID control method is adopted to eliminate the pose error and control the robot to move according to the desired path.
- a path planning method based on B-spline curve including the following steps:
- the method for calculating control points in step S02 includes:
- the B-spline order is 3, and the B-spline basis function is obtained:
- the i-th segment B-spline curve is:
- Bsplines i G 0,3 (s)P i +G 1,3 (s)P i+1 +G 2,3 (s)P i+2 +G 3,3 (s)P i+3 i ⁇ [0,m-2];
- m is the number of control points
- s is the variable of the B-spline curve.
- the invention also discloses a motion control method based on the B-spline curve path, and the B-spline path is obtained by the above-mentioned path planning method based on the B-spline curve;
- (p(s), q(s)) are the coordinates of the target reference point
- ⁇ d is the angle between the line of the current motion center position and the target reference point and the x-axis
- ⁇ is the clamp between the robot's running direction and the x-axis.
- Angle k is the empirical value
- ⁇ r is the tangent angle of the B-spline curve
- the parameter ⁇ ⁇ vcos( ⁇ d - ⁇ )
- d ⁇ 1/ ⁇
- d ⁇ means The upper bound of ⁇
- ⁇ is the distance between the current motion center position and the target reference point.
- the B-spline curve is updated Obtained by the change of the first-order derivative: Where v 0 is the desired speed,
- ⁇ is a constant, which is the boundary value of ⁇ ;
- the preferred technical solution further includes applying Kalman filtering to predict the pose of the robot in the next few cycles with the current pose of the robot, and updating the state quantity and covariance through the Kalman filtering algorithm, which specifically includes the following steps:
- Model the pose observation system, the predicted value of the current pose ⁇ t-1 represents the pose at the previous moment, A t and B t are system model parameters, and u t represents the control amount of the system model at time t;
- Update optimal estimate ⁇ t corresponding covariance ⁇ t, I is the unit matrix.
- the present invention also discloses a path planning system based on B-spline curve, including:
- Model value point selection module select model value points according to the obtained site coordinates, and the number of model value points selected is at least the B-spline order plus 1;
- Control point calculation module calculate the control point according to the selected model value point coordinates
- Path planning module The B-spline parameter equation is calculated from the control points, and the B-spline parameter equation is used to express the planned path.
- the method for calculating control points includes:
- the present invention also discloses a motion control system based on a B-spline curve path, which includes the above-mentioned B-spline curve-based path planning system and a motion control module;
- the motion control module performs motion control according to the target reference point that changes in real time
- (p(s), q(s)) are the coordinates of the target reference point
- ⁇ d is the angle between the line of the current motion center position and the target reference point and the x-axis
- ⁇ is the clamp between the robot's running direction and the x-axis.
- Angle k is the empirical value
- ⁇ r is the tangent angle of the B-spline curve
- the parameter ⁇ ⁇ vcos( ⁇ d - ⁇ )
- d ⁇ 1/ ⁇
- d ⁇ means The upper bound of ⁇
- ⁇ is the distance between the current motion center position and the target reference point.
- the motion control module controls the robot to adjust the speed according to the curvature
- the B-spline curve is updated Obtained by the change of the first-order derivative: Where v 0 is the desired speed,
- ⁇ is a constant, which is the boundary value of ⁇ ;
- the type value points can be dynamically selected according to the dynamic planning of the B-spline path.
- the type value points are less selected, and the control points can be calculated based on the type value points.
- the calculation process is simple and the obtained path is smoother.
- Fig. 1 is a flowchart of a path planning method based on B-spline curve of the present invention
- Figure 2 is a schematic diagram of a path according to an embodiment of the present invention.
- FIG. 3 is a flowchart of a method for motion control based on a path based on a B-spline curve in a preferred embodiment of the present invention
- Figure 4 is a diagram of the control principle of the present invention.
- Figure 5 is a schematic diagram of the relationship between the motion control of the present invention.
- Fig. 6 is a schematic block diagram of a path planning system based on a B-spline curve of the present invention.
- Fig. 7 is a schematic block diagram of the motion control system based on the B-spline path of the present invention.
- a path planning method based on B-spline curve includes the following steps:
- the number of type value points selected on the path should be at least the B-spline order plus 1;
- the type value point on the straight line selects the point on the path.
- B-spline path planning The most important part of B-spline path planning is the selection of type value points. Since the delivery method of the non-B-spline desired path has changed, the process of selecting type value points for the corresponding B-spline path should also be changed. .
- the type value point selection of B-spline path dynamic programming should follow the following principles:
- the value points should include all the stations on the path, and the number of value points is always more than the number of stations;
- the number of stations in the short section of the route issued is at least 3, and at least one station will be added for each subsequent update;
- This simple path method of selecting control points is relatively simple, that is, the first point and the last point of the type value point are expanded into double points, the first two control points coincide and are equal to the first type value point, and the last two control points Coincident and equal to the last type value point.
- the actual path shown in Figure 2 is mostly composed of simple paths. Therefore, the method of selecting control points is to expand the first and last points of the value point into double points, and the first two control points are coincident and equal to The first type value point, the last two control points coincide and are equal to the last type value point.
- the coefficient matrix is a tridiagonal matrix with a rank of n+2, and there is a unique set of solutions for the control points. Because this coefficient matrix is special, and in order to reduce the algorithm complexity of solving the control points, we do not directly invert the coefficient matrix but use the catch-up method to solve it.
- L is a lower two diagonal matrix with elements 1 on the diagonal
- U is an upper two diagonal matrix U, namely:
- L is a two-diagonal matrix with a diagonal element of 1, so it is easy to find y from the above formula. After getting y:
- control point P can be obtained through linear back-substitution.
- the B-spline parameter equation method is calculated from the control points:
- the i-th segment B-spline curve is:
- Bsplines i G 0,3 (s)P i +G 1,3 (s)P i+1 +G 2,3 (s)P i+2 +G 3,3 (s)P i+3 i ⁇ [0,m-2];
- m is the number of control points
- s is the variable of the B-spline curve.
- the invention also discloses a motion control method based on the B-spline curve path.
- the B-spline path is obtained by the above-mentioned path planning method based on the B-spline curve, and the motion control is performed on the obtained B-spline path.
- the motion control method based on the path of the B-spline curve is shown in Figure 3.
- the complete steps include the following steps:
- the adaptive parameter update algorithm is used to update the parameters to obtain the reference point of real-time changes
- the PID control method is adopted to eliminate the position and attitude error and control the AGV to move according to the desired path.
- control principle block diagram is shown as in Fig. 4.
- Motion control includes the following steps:
- Motion control includes controlling the robot to move at a constant speed v, and controlling the robot to adjust the speed according to the curvature.
- the current position of the AGV movement center represents the real-time pose of the AGV, that is, (x, y), (p(s), q(s)) represents the target reference point of the AGV movement, which is on the B-spline path.
- Trolley running speed Is a constant, set a parameter ⁇ to simplify the control of speed and angle and satisfy the upper bound of ⁇ , which needs to be satisfied:
- d represents the desired pose
- d ⁇ represents the supremum of ⁇
- Is the first derivative of ⁇ Is the first derivative of d ⁇ .
- ⁇ represents the angle between the running direction of the car body and the x-axis
- control algorithm is as follows:
- ⁇ f is the angle of the center of motion
- k is the empirical value
- v represents the speed of the center of motion, which is a constant. Indicates the update of the B-spline curve.
- control algorithm is as follows:
- the Kalman filter is used to predict the pose of the next few cycles with the current pose of the robot, and the update calculation of the state quantity and covariance through the Kalman filter algorithm includes the following steps:
- Model the pose observation system, the predicted value of the current pose ⁇ t-1 represents the pose at the previous moment, A t and B t are system model parameters, and u t represents the control amount of the system model at time t;
- Update optimal estimate ⁇ t corresponding covariance ⁇ t, I is the unit matrix.
- the present invention also discloses a path planning system based on B-spline curve, including:
- Model value point selection module select model value points according to the obtained site coordinates, and the number of model value points selected is at least the B-spline order plus 1;
- Control point calculation module calculate the control point according to the selected model value point coordinates
- Path planning module The B-spline parameter equation is calculated from the control points, and the B-spline parameter equation is used to express the planned path.
- the present invention also discloses a motion control system based on a B-spline curve path, which includes the above-mentioned B-spline curve-based path planning system and a motion control module;
- the motion control module performs motion control according to the target reference point that changes in real time
- (p(s), q(s)) are the coordinates of the target reference point
- ⁇ d is the angle between the line of the current motion center position and the target reference point and the x-axis
- ⁇ is the clamp between the robot's running direction and the x-axis.
- Angle k is the empirical value
- ⁇ r is the tangent angle of the B-spline curve
- the parameter ⁇ ⁇ vcos( ⁇ d - ⁇ )
- d ⁇ 1/ ⁇
- d ⁇ means The upper bound of ⁇
- ⁇ is the distance between the current motion center position and the target reference point.
- control parameters are:
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
- Numerical Control (AREA)
Abstract
一种基于B样条曲线的路径规划方法,包括:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1(S01);根据选取的型值点坐标计算得到控制点(S02);由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径(S03)。可以根据B样条路径动态规划动态选取型值点,型值点选取少,可以根据型值点计算得到控制点,计算过程简单。根据曲率调节车速,并根据小车的车速调节角速率,采用PID控制方法,消除位姿误差,控制机器人按期望路径运动。
Description
本发明涉及机器人的路径规划及控制技术领域,具体地涉及一种适用于AGV的基于B样条曲线的路径规划方法、运动控制方法及系统。
自动导引装置工作的过程中一般需要对其从起始点到目标点的路径进行规划。常用的路径规划方式有很多,比如规划路径为曲线,可使用插值的方式生成多项式插值。为了使曲线更容易计算,避免龙格现象,低阶可实现,可使用样条曲线插值,常见的样条曲线有贝塞尔曲线,B样条曲线等。为了使多项式次数独立于控制点数目,局部控制曲线路径,采用了B样条曲线进行路径规划而不用贝塞尔曲线。如果使用B样条曲线进行路径规划,主要输出内容为控制点和样条次数,据此可算出路径。自动导引装置根据路径行走,无限接近路径,但现有技术中,因为自动导引装置本身的机械参数,控制和定位算法,以及整个系统的影响,自动导引装置与路径之间是有误差的,但会尽量将误差控制在合理范围内,使得自动导引装置到达目标点时与目标点的位置之间的误差在允许范围内。
样条曲线的绘制在于样条曲线的控制点,但人工控制样条曲线的控制点时,可能造成样条曲线的曲率过大从而导致AGV在运行当中偏转过快,造成不必要的损失。
发明内容
为了解决上述存在的技术问题,本发明提供了一种基于B样条曲线的路径规划方法、运动控制方法及系统,可以根据B样条路径动态规划动态选取型值点,型值点选取少,可以根据型值点计算得到控制点,计算过程简单。根据曲率调节车速,并根据小车的车速调节角速率,采用PID控制方法,消除位姿误差,控制机器人按期望路径运动。
本发明的技术方案是:
一种基于B样条曲线的路径规划方法,包括以下步骤:
S01:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;
S02:根据选取的型值点坐标计算得到控制点;
S03:由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径。
优选的技术方案中,所述步骤S02中计算控制点的方法包括:
得到n个型值点的点列Q
1,Q
2,…,Q
n,将这n个型值点作为n-1段B样条曲线的端点,根据曲线的端点性质得到下列方程:
P
i-1+4P
i+P
i+1=6Q
i(i=1,2,…,n);
添加两个边界条件:
5P
0+P
1=6Q
1;
P
n+5P
n+1=6Q
n
其中P为控制点,Q为型值点;
用矩阵表示方程组:
将系数矩阵分解为一个对角线上元素为1的下二对角矩阵L和一个上二对角矩阵U的相乘,即AP=LUP=Q;
令UP=y,则Ly=Q,求得y,进一步由UP=y,求得控制点P。
优选的技术方案中,所述步骤S03中,B样条阶次为3,得到B样条基函数:
第i段B样条曲线为:
Bsplines
i=G
0,3(s)P
i+G
1,3(s)P
i+1+G
2,3(s)P
i+2+G
3,3(s)P
i+3i∈[0,m-2];
其中,m为控制点个数,s为B样条曲线的变量。
本发明还公开了一种基于B样条曲线的路径的运动控制方法,通过上述基于B样条曲线的路径规划方法得到B样条路径;
根据实时变化的目标参考点进行运动控制;
其中,(p(s),q(s))为目标参考点坐标,ψ
d为当前运动中心位置与目标参考点的连线与x轴的夹角,ψ为机器人运行方向与x轴的夹角,k为经验值,θ
r为B样条曲线的切线夹角,v=const为常量,参数γ=αvcos(ψ
d-ψ),α>0,d
ρ=1/α,d
ρ表示ρ的上确界,ρ为当前运动中心位置与目标参考点的距离。
避免奇点的ψ
d计算方式:
其中,ε是一个常数,是ρ的边界值;
计算运动中心角度:
计算运动中心速度:
v=γρcos(△ψ)
其中,△ψ=ψ
d-ψ,γ为参数。
优选的技术方案中,还包括应用卡尔曼滤波以机器人当前位姿预测下几个周期的位姿,通过卡尔曼滤波算法对状态量和协方差的更新计算,具体包括以下步骤:
本发明又公开了一种基于B样条曲线的路径规划系统,包括:
型值点选取模块:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;
控制点计算模块:根据选取的型值点坐标计算得到控制点;
路径规划模块:由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径。
优选的技术方案中,所述计算控制点的方法包括:
得到n个型值点的点列Q
1,Q
2,…,Q
n,将这n个型值点作为n-1段B样条曲线的端点,根据曲线的端点性质得到下列方程:
P
i-1+4P
i+P
i+1=6Q
i(i=1,2,…,n);
添加两个边界条件:
5P
0+P
1=6Q
1;
P
n+5P
n+1=6Q
n
其中P为控制点,Q为型值点;
用矩阵表示方程组:
将系数矩阵分解为一个对角线上元素为1的下二对角矩阵L和一个上二对角矩阵U的相乘,即AP=LUP=Q;
令UP=y,则Ly=Q,求得y,进一步由UP=y,求得控制点P。
本发明又公开了一种基于B样条曲线的路径的运动控制系统,包括上述基于B样条曲线的路径规划系统和运动控制模块;
通过基于B样条曲线的路径规划系统得到B样条路径;
所述运动控制模块,根据实时变化的目标参考点进行运动控制;
其中,(p(s),q(s))为目标参考点坐标,ψ
d为当前运动中心位置与目标参考点的连线与x轴的夹角,ψ为机器人运行方向与x轴的夹角,k为经验值,θ
r为B样条曲线的切线夹角,v=const为常量,参数γ=αvcos(ψ
d-ψ),α>0,d
ρ=1/α,d
ρ表示ρ的上确界,ρ为当前运动中心位置与目标参考点的距离。
避免奇点的ψ
d计算方式:
其中,ε是一个常数,是ρ的边界值;
计算运动中心角度:
计算运动中心速度:
v=γρcos(△ψ)
其中,△ψ=ψ
d-ψ,γ为参数。
与现有技术相比,本发明的优点是:
1、可以根据B样条路径动态规划动态选取型值点,型值点选取少,可以根据型值点计算得到控制点,计算过程简单,得到的路径更光滑。
2、根据曲率调节车速,并根据小车的车速调节角速率,采用PID控制方法,消除位姿误差,控制AGV按期望路径运动,使得AGV运行更加平稳。
下面结合附图及实施例对本发明作进一步描述:
图1为本发明基于B样条曲线的路径规划方法的流程图;
图2为本发明一实施例的路径示意图;
图3为本发明较佳的实施例的基于B样条曲线的路径的运动控制方法的流程图;
图4为本发明控制原理图;
图5为本发明运动控制的关系示意图;
图6为本发明基于B样条曲线的路径规划系统的原理框图;
图7为本发明基于B样条路径的运动控制系统的原理框图。
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
实施例:
下面结合附图,对本发明的较佳实施例作进一步说明。
如图1所示,一种基于B样条曲线的路径规划方法,包括以下步骤:
S01:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;
S02:根据选取的型值点坐标计算得到控制点;
S03:由控制点计算得到B样条参数方程,用B样条参数方程表示规划 的路径。
型值点的选取:
(1)B样条路径不发生变更(B样条路径静态规划):
a、路径上选取的型值点个数应至少为B样条阶数加1;
b、简单曲线路径(如90度弧线)应至少选取顶点作为型值点;
c、复杂曲线可适当多选几个型值点,包括路径上的点和不在路径上的顶点;
d、直线上的型值点选取路径上的点。
(2)B样条路径动态规划:
B样条路径规划中最重要的部分就是型值点的选择,由于非B样条期望路径的下发方式发生了变化,那么相应的B样条路径选择型值点的过程也应随之改变。B样条路径动态规划的型值点选点应当遵循以下原则:
1、型值点应包含路径上所有的站点,且型值点数量总是多于站点数量;
2、机器人(AGV)在路径起点时,下发的该小段路径所包含的站点数至少为3个,以后每更新一次至少增加一个站点;
3、每一小段直线路径的最后两个站点的中点应作为一个型值点,圆弧顶点应作为一个型值点;
4、每一段新的路径的下发时机应不晚于车辆到达上段路径的倒数第二个站点。
简单规则路径的控制点选取
简单的规则路径如:直线、90度弧线、180度调头、平行直线迁移及这些路径类型的组合路径。这种简单路径选取控制点的方法较为简单,即将型值点的第一个点和最后一个点扩展为双重点,前两个控制点重合且等于第一个型值点,最后两个控制点重合且等于最后一个型值点。
如图2所示的实际路径多由简单路径拼接而成,因此控制点的选点方法为将型值点的第一个点和最后一个点扩展为双重点,前两个控制点重合且等于第一个型值点,最后两个控制点重合且等于最后一个型值点。
图中有四段路径,分别按照时间窗动态下发,其中Q0到Q15是路径的型值点,P0到P17是路径的控制点。
复杂不规则路径的控制点计算—反解控制点
对于复杂的不规则路径,直接由型值点得到控制点比较困难,可以用以下方法通过型值点反求控制点。
得到n个型值点的点列Q
1,Q
2,…,Q
n,将这n个型值点作为n-1段B样条曲线的端点,由3阶B样条性质可以得到,一整条B样条曲线有n+2个控制点。根据曲线的端点性质可以得到:
P
i-1+4P
i+P
i+1=6Q
i(i=1,2,…,n)
但是此时作为未知量的控制点的个数为n+2个,而上式只能写出n个方程,由此可以看出方程数量不够,从而无法解出唯一的一组控制点。因此,需要添加两个边界条件:
5P
0+P
1=6Q
1
P
n+5P
n+1=6Q
n
由此我们可以将上述问题用线性方程组的形式来表示:
上式中,系数矩阵是三对角矩阵,其秩为n+2,控制点存在唯一的一组解。由于此系数矩阵比较特殊,且为了减小求解控制点的算法复杂度,我们不直接对系数矩阵求逆而是采用追赶法来进行求解。
将系数矩阵A分解为:
A=LU
其中,L为一个对角线上元素为1的下二对角矩阵,U为一个上二对角矩阵U,即:
那么原线性方程组就可以写成:
AP=LUP=Q
令UP=y,则:
Ly=Q
L是对角元为1的二对角矩阵,因此易由上式求得y。在得到y以后:
UP=y
由于U为二对角矩阵,即可通过线性回代求得控制点P。
由控制点计算得到B样条参数方程方法:
我们用的是三阶B样条,B样条阶次为3,得到B样条基函数:
第i段B样条曲线为:
Bsplines
i=G
0,3(s)P
i+G
1,3(s)P
i+1+G
2,3(s)P
i+2+G
3,3(s)P
i+3i∈[0,m-2];
其中,m为控制点个数,s为B样条曲线的变量。
本发明还公开了一种基于B样条曲线的路径的运动控制方法,通过上述基于B样条曲线的路径规划方法得到B样条路径,在得到的B样条路径上进行运动控制。
较佳的实施例中,基于B样条曲线的路径的运动控制方法如图3所示,完整的步骤包括以下步骤:
1、根据实际需求,对AGV必须经过的点(即站点)进行规划;
2、通过上述站点(此时可称为型值点)反解控制点;
3、由控制点计算得到B样条参数方程(我们用的是三阶B样条);
4、用上述B样条参数方程表示AGV的行驶路径;
5、采用自适应参数更新算法,进行参数更新,得到实时变化的参考点;
6、结合AGV的实际位姿,得到位姿误差;
7、考虑到实际的AGV小车有转动惯量,根据曲率调节车速,并根据小车的车速调节角速率;
8、考虑到实际过程中有响应时延,应用卡尔曼滤波以AGV当前位姿预测下几个周期的位姿;
9、计及7、8所述因素,采用PID控制方法,消除位姿误差,控制AGV按期望路径运动。
控制原理框图如图4所示。
运动控制包括以下步骤:
根据实时变化的目标参考点进行运动控制;
运动控制包括控制机器人以恒定速度v运动,和控制机器人根据曲率调节速度。
具体的控制算法中的控制模型如图5所示:
AGV运动中心的当前位置表示AGV的实时位姿,即(x,y),(p(s),q(s))表示AGV运动的目标参考点,在B样条路径上。
x
d=p(s)
y
d=q(s)
控制机器人以恒定速度v运动时:
因此(1)式可表示为:
ψ表示车体运行方向与x轴的夹角;
给定γ=αvcos(ψ
d-ψ),α>0,d
ρ=1/α,θ
r为B样条曲线s的切线夹角,因此(3)式可表示为:
因此得到控制算法如下:
控制机器人根据曲率调节速度,并根据小车的车速调节角速率:
x
d=p(s)
y
d=q(s)
其中s的更新由其一阶导的变化实现:
避免奇点的ψ
d计算方式:
其中θ
r是参考点切线倾角,ε是一个常数,是ρ的边界值。运动中心角度的计算:
运动中心速度计算:
v=γρcos(△ψ)
其中△ψ=ψ
d-ψ
因此得到控制算法如下:
应用卡尔曼滤波以机器人当前位姿预测下几个周期的位姿,通过卡尔曼滤波算法对状态量和协方差的更新计算,具体包括以下步骤:
如图6所示,本发明又公开了一种基于B样条曲线的路径规划系统,包括:
型值点选取模块:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;
控制点计算模块:根据选取的型值点坐标计算得到控制点;
路径规划模块:由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径。
如图7所示,本发明又公开了一种基于B样条曲线的路径的运动控制系统,包括上述基于B样条曲线的路径规划系统和运动控制模块;
通过基于B样条曲线的路径规划系统得到B样条路径;
所述运动控制模块,根据实时变化的目标参考点进行运动控制;
其中,(p(s),q(s))为目标参考点坐标,ψ
d为当前运动中心位置与目标参考 点的连线与x轴的夹角,ψ为机器人运行方向与x轴的夹角,k为经验值,θ
r为B样条曲线的切线夹角,v=const为常量,参数γ=αvcos(ψ
d-ψ),α>0,d
ρ=1/α,d
ρ表示ρ的上确界,ρ为当前运动中心位置与目标参考点的距离。
运动控制模块控制机器人根据曲率调节速度时,控制参数为:
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (10)
- 一种基于B样条曲线的路径规划方法,其特征在于,包括以下步骤:S01:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;S02:根据选取的型值点坐标计算得到控制点;S03:由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径。
- 根据权利要求4所述的基于B样条曲线的路径的运动控制方法,其特征在于,还包括应用卡尔曼滤波以机器人当前位姿预测下几个周期的位姿,通过卡尔曼滤波算法对状态量和协方差的更新计算,具体包括以下步骤:
- 一种基于B样条曲线的路径规划系统,其特征在于,包括:型值点选取模块:根据获取的站点坐标选取型值点,选取的型值点个数至少为B样条阶数加1;控制点计算模块:根据选取的型值点坐标计算得到控制点;路径规划模块:由控制点计算得到B样条参数方程,用B样条参数方程表示规划的路径。
- 一种基于B样条曲线的路径的运动控制系统,其特征在于,包括权利要求7-8任一种基于B样条曲线的路径规划系统和运动控制模块;通过基于B样条曲线的路径规划系统得到B样条路径;所述运动控制模块,根据实时变化的目标参考点进行运动控制;其中,(p(s),q(s))为目标参考点坐标,ψ d为当前运动中心位置与目标参考点的连线与x轴的夹角,ψ为机器人运行方向与x轴的夹角,k为经验值,θ r为B样条曲线的切线夹角,v=const为常量,参数γ=αvcos(ψ d-ψ),α>0,d ρ=1/α,d ρ表示ρ的上确界,ρ为当前运动中心位置与目标参考点的距离。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010510718.0A CN113835423B (zh) | 2020-06-08 | 2020-06-08 | 基于b样条曲线的路径规划方法、运动控制方法及系统 |
CN202010510718.0 | 2020-06-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021248797A1 true WO2021248797A1 (zh) | 2021-12-16 |
Family
ID=78846895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/127658 WO2021248797A1 (zh) | 2020-06-08 | 2020-11-10 | 基于b样条曲线的路径规划方法、运动控制方法及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113835423B (zh) |
WO (1) | WO2021248797A1 (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114355981A (zh) * | 2022-01-06 | 2022-04-15 | 中山大学 | 一种四旋翼无人机自主探索建图的方法和系统 |
CN114491865A (zh) * | 2022-02-08 | 2022-05-13 | 合肥工业大学 | 一种工件表面轮廓自适应离散方法 |
CN114839866A (zh) * | 2022-03-21 | 2022-08-02 | 哈尔滨工程大学 | 一种水下蛇形机器人曲线路径跟踪控制方法 |
CN114858132A (zh) * | 2022-04-25 | 2022-08-05 | 中南大学 | 基于切线倾斜角的隧道断面拟合方法、装置及介质 |
CN114952089A (zh) * | 2022-05-13 | 2022-08-30 | 中联重科股份有限公司 | 锥筒体叶片安装方法及锥筒体叶片安装装置 |
CN114995281A (zh) * | 2022-05-10 | 2022-09-02 | 清华大学 | 非可展直纹曲面最优刀位规划方法及装置 |
CN115373427A (zh) * | 2022-07-28 | 2022-11-22 | 南京航空航天大学 | 一种考虑四旋翼无人机动力学约束的运动规划方法及系统 |
CN116071458A (zh) * | 2023-03-06 | 2023-05-05 | 机科发展科技股份有限公司 | 一种agv运行用电子地图复现系统和方法 |
CN116243701A (zh) * | 2022-10-28 | 2023-06-09 | 北京航空航天大学杭州创新研究院 | 基于最优推进速度的水下机器人最优能耗路径规划方法 |
CN116242383A (zh) * | 2023-03-15 | 2023-06-09 | 皖西学院 | 一种基于增强哈里斯鹰算法的无人车路径规划方法 |
CN116551457A (zh) * | 2023-07-11 | 2023-08-08 | 济南邦德激光股份有限公司 | 一种通过样条曲线连接加工直线段与圆弧段的方法与设备 |
CN116654274A (zh) * | 2023-06-25 | 2023-08-29 | 成都飞机工业(集团)有限责任公司 | 一种飞机舱门装配基准快速找正方法 |
CN117982225A (zh) * | 2024-04-07 | 2024-05-07 | 柏意慧心(杭州)网络科技有限公司 | 左心室流出道csept几何参数的测量方法、装置、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150121931A (ko) * | 2014-04-22 | 2015-10-30 | 부산대학교 산학협력단 | 하이브리드 경로 생성 방법을 이용한 무인 지상 차량 경로 제어 시스템 |
CN107116549A (zh) * | 2017-03-15 | 2017-09-01 | 广东工业大学 | 一种基于四阶三次b样条函数的机器人轨迹规划方法及仿人机器人平台 |
CN108415413A (zh) * | 2018-03-28 | 2018-08-17 | 华南农业大学 | 一种基于圆形有用域的智能叉车局部避障路径规划方法 |
CN109697272A (zh) * | 2018-11-09 | 2019-04-30 | 广州奇芯机器人技术有限公司 | 一种简易的二次b样条曲线拟合方法 |
CN109799785A (zh) * | 2017-11-17 | 2019-05-24 | 深圳市腾盛工业设备有限公司 | 一种样条曲线定位方法、以及存储介质 |
CN109933057A (zh) * | 2017-12-18 | 2019-06-25 | 中国农业机械化科学研究院 | 拖拉机自动驾驶系统的局部引导轨迹规划方法及装置 |
CN110147221A (zh) * | 2019-05-27 | 2019-08-20 | 广西大学 | 一种基于b样条曲线的可验证随机数产生方法和验证方法 |
CN110533730A (zh) * | 2019-08-26 | 2019-12-03 | 智久(厦门)机器人科技有限公司 | 基于b样条曲线的路径规划方法、装置、计算机可读存储介质 |
US20200073396A1 (en) * | 2018-08-28 | 2020-03-05 | Denso Corporation | Travel assistance method and travel assistance apparatus |
CN111208807A (zh) * | 2018-11-06 | 2020-05-29 | 苏州艾吉威机器人有限公司 | 一种基于b样条曲线的agv运动控制方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100664681B1 (ko) * | 2005-08-30 | 2007-01-04 | 주식회사 로보스타 | 매개변수곡선으로 기술된 로봇 경로의 샘플 테이터를이용한 직접보간 시스템 및 방법 |
DE102009023307A1 (de) * | 2009-05-29 | 2010-12-02 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zur Steuerung eines Manipulators |
CN108919750B (zh) * | 2018-07-27 | 2020-01-21 | 深圳市雷赛控制技术有限公司 | 一种基于非均匀b样条的加工轨迹实时规划方法及装置 |
CN109765887B (zh) * | 2018-12-21 | 2020-08-14 | 杭州翱朝科技有限公司 | 一种自动驾驶控制方法 |
CN109542106A (zh) * | 2019-01-04 | 2019-03-29 | 电子科技大学 | 一种移动机器人多约束条件下的路径规划方法 |
-
2020
- 2020-06-08 CN CN202010510718.0A patent/CN113835423B/zh active Active
- 2020-11-10 WO PCT/CN2020/127658 patent/WO2021248797A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150121931A (ko) * | 2014-04-22 | 2015-10-30 | 부산대학교 산학협력단 | 하이브리드 경로 생성 방법을 이용한 무인 지상 차량 경로 제어 시스템 |
CN107116549A (zh) * | 2017-03-15 | 2017-09-01 | 广东工业大学 | 一种基于四阶三次b样条函数的机器人轨迹规划方法及仿人机器人平台 |
CN109799785A (zh) * | 2017-11-17 | 2019-05-24 | 深圳市腾盛工业设备有限公司 | 一种样条曲线定位方法、以及存储介质 |
CN109933057A (zh) * | 2017-12-18 | 2019-06-25 | 中国农业机械化科学研究院 | 拖拉机自动驾驶系统的局部引导轨迹规划方法及装置 |
CN108415413A (zh) * | 2018-03-28 | 2018-08-17 | 华南农业大学 | 一种基于圆形有用域的智能叉车局部避障路径规划方法 |
US20200073396A1 (en) * | 2018-08-28 | 2020-03-05 | Denso Corporation | Travel assistance method and travel assistance apparatus |
CN111208807A (zh) * | 2018-11-06 | 2020-05-29 | 苏州艾吉威机器人有限公司 | 一种基于b样条曲线的agv运动控制方法 |
CN109697272A (zh) * | 2018-11-09 | 2019-04-30 | 广州奇芯机器人技术有限公司 | 一种简易的二次b样条曲线拟合方法 |
CN110147221A (zh) * | 2019-05-27 | 2019-08-20 | 广西大学 | 一种基于b样条曲线的可验证随机数产生方法和验证方法 |
CN110533730A (zh) * | 2019-08-26 | 2019-12-03 | 智久(厦门)机器人科技有限公司 | 基于b样条曲线的路径规划方法、装置、计算机可读存储介质 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114355981A (zh) * | 2022-01-06 | 2022-04-15 | 中山大学 | 一种四旋翼无人机自主探索建图的方法和系统 |
CN114355981B (zh) * | 2022-01-06 | 2024-01-12 | 中山大学 | 一种四旋翼无人机自主探索建图的方法和系统 |
CN114491865A (zh) * | 2022-02-08 | 2022-05-13 | 合肥工业大学 | 一种工件表面轮廓自适应离散方法 |
CN114491865B (zh) * | 2022-02-08 | 2024-02-20 | 合肥工业大学 | 一种工件表面轮廓自适应离散方法 |
CN114839866A (zh) * | 2022-03-21 | 2022-08-02 | 哈尔滨工程大学 | 一种水下蛇形机器人曲线路径跟踪控制方法 |
CN114858132A (zh) * | 2022-04-25 | 2022-08-05 | 中南大学 | 基于切线倾斜角的隧道断面拟合方法、装置及介质 |
CN114995281A (zh) * | 2022-05-10 | 2022-09-02 | 清华大学 | 非可展直纹曲面最优刀位规划方法及装置 |
CN114952089B (zh) * | 2022-05-13 | 2023-10-13 | 中联重科股份有限公司 | 锥筒体叶片安装方法及锥筒体叶片安装装置 |
CN114952089A (zh) * | 2022-05-13 | 2022-08-30 | 中联重科股份有限公司 | 锥筒体叶片安装方法及锥筒体叶片安装装置 |
CN115373427A (zh) * | 2022-07-28 | 2022-11-22 | 南京航空航天大学 | 一种考虑四旋翼无人机动力学约束的运动规划方法及系统 |
CN116243701A (zh) * | 2022-10-28 | 2023-06-09 | 北京航空航天大学杭州创新研究院 | 基于最优推进速度的水下机器人最优能耗路径规划方法 |
CN116071458A (zh) * | 2023-03-06 | 2023-05-05 | 机科发展科技股份有限公司 | 一种agv运行用电子地图复现系统和方法 |
CN116242383B (zh) * | 2023-03-15 | 2023-09-15 | 皖西学院 | 一种基于增强哈里斯鹰算法的无人车路径规划方法 |
CN116242383A (zh) * | 2023-03-15 | 2023-06-09 | 皖西学院 | 一种基于增强哈里斯鹰算法的无人车路径规划方法 |
CN116654274A (zh) * | 2023-06-25 | 2023-08-29 | 成都飞机工业(集团)有限责任公司 | 一种飞机舱门装配基准快速找正方法 |
CN116654274B (zh) * | 2023-06-25 | 2024-06-11 | 成都飞机工业(集团)有限责任公司 | 一种飞机舱门装配基准快速找正方法 |
CN116551457A (zh) * | 2023-07-11 | 2023-08-08 | 济南邦德激光股份有限公司 | 一种通过样条曲线连接加工直线段与圆弧段的方法与设备 |
CN116551457B (zh) * | 2023-07-11 | 2023-10-27 | 济南邦德激光股份有限公司 | 一种通过样条曲线连接加工直线段与圆弧段的方法与设备 |
CN117982225A (zh) * | 2024-04-07 | 2024-05-07 | 柏意慧心(杭州)网络科技有限公司 | 左心室流出道csept几何参数的测量方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113835423B (zh) | 2024-03-26 |
CN113835423A (zh) | 2021-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021248797A1 (zh) | 基于b样条曲线的路径规划方法、运动控制方法及系统 | |
CN110262495B (zh) | 可实现移动机器人自主导航与精确定位的控制系统及方法 | |
US7228227B2 (en) | Bezier curve flightpath guidance using moving waypoints | |
WO2020094056A1 (zh) | 基于b样条曲线的agv运动控制方法 | |
CN110320809B (zh) | 一种基于模型预测控制的agv轨迹修正方法 | |
CA1330584C (en) | Robot articulated arm control | |
US5109340A (en) | Path planning method for mobile robots | |
CN111538328B (zh) | 一种用于自主驾驶车辆避障轨迹规划与跟踪控制的优先级分层预测控制方法 | |
CN110568758A (zh) | 一种自动驾驶汽车的参数自适应横向运动lqr控制方法 | |
CN112947572B (zh) | 一种基于地形跟随的四旋翼飞行器自适应运动规划方法 | |
CN115435816B (zh) | 在线双舵轮agv内外参标定方法、系统、介质及设备 | |
CN109557929A (zh) | 移动机器人的运动控制方法及装置 | |
EP4073608A1 (en) | A method for accurate and efficient control of automated guided vehicles for load transportation tasks | |
CN113885514B (zh) | 基于模糊控制和几何追踪的agv路径跟踪方法及系统 | |
CN110789530A (zh) | 一种四轮独立转向-独立驱动车辆轨迹跟踪方法和系统 | |
CN116360260A (zh) | 基于触发制导和自更新阈值的asv预设性能控制方法 | |
CN110362110A (zh) | 一种固定时自适应神经网络无人机航迹角控制方法 | |
CN116700288A (zh) | 一种基于自适应模型预测控制的移动机器人局部轨迹规划方法及系统 | |
CN117930661A (zh) | 差速agv控制方法、装置、小车及可读存储介质 | |
WO2019128406A1 (zh) | 一种机器人的速度控制方法及系统 | |
CN104898659A (zh) | 一种基于模型预测的人机协同控制方法 | |
WO2018223776A1 (zh) | 机器人的控制方法、装置、系统和计算机可读存储介质 | |
CN115993089B (zh) | 基于pl-icp的在线四舵轮agv内外参标定方法 | |
CN113608529B (zh) | 一种轮式移动平台运动轨迹预瞄跟踪控制系统、方法 | |
CN112596516B (zh) | 基于Dubins曲线的多车队形切换方法 |
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: 20940361 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20940361 Country of ref document: EP Kind code of ref document: A1 |