CN116088498A - 一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 - Google Patents
一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 Download PDFInfo
- Publication number
- CN116088498A CN116088498A CN202211578769.2A CN202211578769A CN116088498A CN 116088498 A CN116088498 A CN 116088498A CN 202211578769 A CN202211578769 A CN 202211578769A CN 116088498 A CN116088498 A CN 116088498A
- Authority
- CN
- China
- Prior art keywords
- automatic driving
- algorithm
- control
- vehicle
- driving vehicle
- 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 31
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 57
- 238000005457 optimization Methods 0.000 claims abstract description 9
- 238000012937 correction Methods 0.000 claims abstract description 3
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000005070 sampling Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 5
- 238000004088 simulation Methods 0.000 claims description 5
- 238000013461 design Methods 0.000 claims description 4
- 239000000725 suspension Substances 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001629 suppression Effects 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
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- 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
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- 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/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本发明请求保护一种基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法,属于自动驾驶车辆控制技术领域。其包括以下步骤:步骤1、建立自动驾驶车辆的运动学模型;步骤2、实现自动驾驶车辆轨迹跟踪控制,包括预测模型建立,定义代价函数,运用OSQP算法求解优化问题和反馈校正;步骤3、基于FPGA实现自动驾驶车辆的轨迹跟踪控制。本发明用于解决自动驾驶车辆的轨迹跟踪控制问题,以及在保证控制性能的前提下通过FPGA加速模型预测控制算法,实现自动驾驶车辆对参考轨迹的高精度实时跟踪控制。
Description
技术领域
本发明属于自动驾驶车辆控制技术领域,涉及一种基于MPC算法与FPGA的自动驾驶车辆轨迹跟踪控制方法。
背景技术
研究轨迹跟踪控制技术对于无人驾驶车辆能够在复杂的道路环境中安全稳定行驶有着重要的意义,轨迹跟踪控制包括横向路径跟踪控制和纵向速度控制,横向路径跟踪控制通过输入前轮转角使车辆按照规划路径行驶,例如现在常用的车道保持系统、自主换道系统、纵向控制通过对油门和刹车的控制间接控制车辆的纵向速度,例如自适应巡航系统。
模型预测控制作为一种新型的优化控制方法,起初产生于工业过程控制领域,随着传感、网络通信、硬件处理等技术的不断发展,开始应用于化工、食品加工和航空航天等领域,并且都取得了成功;模型预测控制相对于其他控制方法具有对模型精度要求不高,鲁棒性及稳定性良好,可有效处理多变量约束的问题等诸多优点。基于在其他领域成功的先例以及自身的优越性能,近些年来,模型预测控制被越来越多地运用到了自动驾驶领域。
由于MPC的核心是在线求解约束优化问题,这一求解过程计算负担大、耗时长,对控制器的计算处理能力要求较高,因此,一般的处理器(如单片机)不能满足快速动态系统对MPC控制器的要求。为了将MPC成功应用于快速动态系统,MPC控制器的硬件实现平台必须既能实现MPC高效率的在线计算,又能满足系统对控制器微型化的需求。
FPGA全称现场可编程门阵列(FieldProgrammableGateArray),它主要是由可编程逻辑块组成的高密度的逻辑阵列,与CPU和GPU不同,FPGA不以指令序列的形式执行程序,也不受缓存和固定内存空间的限制。
目前大多数FPGA芯片上已经包含多达百万个逻辑单元,这使得研究人员可以将其应用在包括自动驾驶汽车、医疗、通信、航空航天等多个领域。如何将控制性能良好,实时性要求较苛刻的模型预测控制算法和综合性能优越,开发难度较大的FPGA芯片相结合,在自动驾驶领域具有重大意义。
CN109358621A,一种自动驾驶汽车轨迹跟踪控制方法,在自动驾驶汽车的轨迹跟踪控制建模过程中,考虑了不可避免的网络时延和数据丢包问题,且一般化的时延表达式更有利于控制器的设计。自动驾驶汽车轨迹跟踪控制设计综合考虑了车辆动力学模型的不确定性和外界扰动的影响,提高了车辆的操纵稳定性和轨迹跟踪控制的鲁棒性。通过求解线性矩阵不等式解决了含有网络时延和数据丢包的自动驾驶汽车轨迹跟踪控制问题,计算方便。通过求解凸优化问题,可以计算得到自动驾驶汽车轨迹跟踪控制问题扰动抑制性能指标的下界,从而,可以得到最优的轨迹跟踪控制器。
一种基于FPGA和模型预测控制算法的自动驾驶车辆轨迹跟踪控制方法,在模型预测控制算法的实现过程中,考虑了模型预测控制算法优化问题的求解和算法实现的计算问题。自动驾驶车辆轨迹跟踪控制方法综合考虑了算法的计算时间和算法的实现复杂性,提高了模型预测控制算法的计算效率,降低了算法在实际自动驾驶车辆上实现的复杂度。通过OSQP(算子分裂二次规划)算法解决了模型预测控制算法优化问题的求解,降低了算法的求解时间。通过使用了FPGA对模型预测控制算法进行加速,降低了算法实现的复杂性,从而提高了自动驾驶车辆轨迹跟踪控制的控制性能。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法。本发明的技术方案如下:
一种基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法,其包括以下步骤:
步骤1、建立自动驾驶车辆的运动学模型;
步骤2、实现自动驾驶车辆轨迹跟踪控制,包括预测模型建立,定义代价函数,运用OSQP算子分裂二次规划算法求解优化问题和反馈校正;
步骤3、基于FPGA实现自动驾驶车辆的轨迹跟踪控制。
进一步的,所述步骤1建立自动驾驶车辆的运动学模型具体包括:
假设车辆在任意时刻做直线运动或者绕某个点做圆周运动,并忽略悬架的作用,则可以得到车辆的转向运动模型,其中,(Xr,Yr)和(Xf,Yf)分别为车辆在后轴中心和前轴中心的在惯性坐标系下的坐标,车辆在后轴中心处的速度Vr=3m/s,轴距l=2.8m,R为后轴中心的瞬时转向半径,前轮偏角-10°<δf<10°,自动驾驶车辆的运动学模型为:
进一步的,所述步骤2中预测模型建立具体包括:
η(k)=ΨkX(k)+ΘkΔU(k)
Ψk、Θk为预测输出的矩阵参数。
其中:
进一步的,所述步骤2中定义代价函数,具体包括:
采用如下形式的目标函数:
其中,Q,R代表权重矩阵,J(k)为目标函数,ηref(k)为参考输入,权重系数ρ=2,松弛因子ε=1,约束条件为:
ΔUmin≤ΔU(k)≤ΔUmax
Umin≤ΞΔU(k)+U(k-1)≤Umax
Ξ为参数矩阵,Umin为控制量约束的最小值,Umax为控制量约束的最大值,ΔUmin为控制增量约束的最小值,ΔUmax为控制增量约束的最大值。
其中
通过OSQP算法求解如下所示的二次规划问题:
进一步的,所述步骤2采用OSQP算法求解凸二次规划问题,OSQP算法的具体计算方法如下:
1.设定初值ω0=o,z0=o,y0=o和参数ρ=1,σ=10-6,α=1.5,迭代次数n=100;α为松弛参数,σ为惩罚参数,ρ为步长参数;z0、y0为迭代变量初值,ω0为优化变量初值。
2.重复计算以下步骤3-7;
8.满足误差准则输出最优解ω*。
进一步的,所述步骤3基于FPGA实现自动驾驶车辆的轨迹跟踪控制,具体的方法是:
采用Xilinx Zynq-7000 FPGA芯片实现算法的硬件实现,首先进行算法的Matlab仿真,然后将模型预测控制算法通过Vivado软件使用verilog进行开发包括算法的设计、实现和测试,最后将算法在FPGA芯片中进行实际的测试,并在实际的车辆上进行验证。
本发明的优点及有益效果如下:
本发明首先使用了一种更优秀的凸二次规划求解算法OSQP(算子分裂二次规划),该方法比传统的内点法和有效集算法具有更短的计算时间和更低的计算复杂度,其次,本发明考虑了模型预测控制算法硬件实现的复杂性,传统的CPU难以满足模型预测控制算法硬件实现的复杂度要求,本发明通过使用FPGA对模型预测控制算法进行优化加速,降低了算法的计算时间并降低了算法硬件实现的复杂性,有利于将模型预测控制算法更广泛的应用到自动驾驶车辆轨迹跟踪控制。
附图说明
图1是本发明提供优选实施例自动驾驶车辆的运动学模型图;
图2是自动驾驶车辆轨迹跟踪仿真结果图;
图3是FPGA实现模型预测控制算法的原理图;
图4是本发明搭建的算法仿真测试平台;
图5是自动驾驶车辆实际跟踪效果图;
图6是本发明的实现原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
无人驾驶车辆的轨迹跟踪主要考虑轨迹跟踪的精度、算法的实时性和算法的鲁棒性,为了满足以上要求,本发明主要做出以下几个方面的研究:(1)车辆运动学模型的建立;(2)模型预测控制算法参数设置;(3)OSQP优化算法参数设置;(4)完成实际的算法验证。
请参阅图1~图5,为了验证本发明所述基于FPGA的车辆轨迹跟踪控制器的控制性能,下面将利用圆形作为车辆的参考轨迹验证算法以及控制器的实际效果,并作详细说明。
第一步:车辆运动学模型建立
参照图1的车辆运动学模型示例图,假设车辆在任意时刻做直线运动或者绕某个点做圆周运动,并忽略悬架的作用,则可以得到车辆的转向运动模型,其中,(Xr,Yr)和(Xf,Yf)分别为车辆在后轴中心和前轴中心的在惯性坐标系下的坐标,车辆在后轴中心处的速度Vr=3m/s,轴距l=2.8m,R为后轴中心的瞬时转向半径,前轮偏角-10°<δf<10°。自动驾驶车辆的运动学模型为:
第二步:实现自动驾驶车辆轨迹跟踪控制
η(k)=ΨkX(k)+ΘkΔU(k)
其中:
其中,Q,R代表权重矩阵,权重系数ρ=2,松弛因子ε=1。约束条件为:
ΔUmin≤ΔU(k)≤ΔUmax
Umin≤ΞΔU(k)+U(k-1)≤Umax
其中
通过OSQP算法求解如下所示的二次规划问题:
本发明采用OSQP算法求解凸二次规划问题,OSQP算法的具体计算方法如下:1.设定初值ω0=o,z0=o,y0=o和参数ρ=1,σ=10-6,α=1.5,迭代次数n=100;
2.重复计算以下步骤3-7;
8.满足误差准则输出最优解ω*。
车辆跟踪圆形参考轨迹的仿真结果如图2所示。
第三步:基于FPGA实现自动驾驶车辆的轨迹跟踪控制
本发明采用的Xilinx Zynq-7000 FPGA芯片实现模型预测控制算法,参考图3,芯片的ARM内核主要负责外围电路的控制,包括UART、GPIO口等,实现传感器数据的采集,然后通过AXI-Lite接口传输数据到芯片的逻辑端,逻辑端实现的是本发明的OSQP算法,逻辑端根据接收到的传感器数据进行计算,并讲计算结果反馈给ARM内核进行处理。
本发明还搭建了一个开发平台对实际的算法进行验证,参考图4,PC机通过Wifi发送控制指令到FPGA端,FPGA接收数据并进行计算,然后控制车辆前进,并将采集到的传感器数据通过Wifi传输到PC上位机,上位机对数据进行解析并显示实时的车辆数据,实际的结果图如图5所示。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
Claims (6)
1.一种基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法,其特征在于,包括以下步骤:
步骤1、建立自动驾驶车辆的运动学模型;
步骤2、实现自动驾驶车辆轨迹跟踪控制,包括预测模型建立,定义代价函数,运用OSQP算子分裂二次规划算法求解优化问题和反馈校正;
步骤3、基于FPGA实现自动驾驶车辆的轨迹跟踪控制。
4.根据权利要求3所述的基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法,其特征在于,所述步骤2中定义代价函数,具体包括:
采用如下形式的目标函数:
其中,Q,R代表权重矩阵,J(k)为目标函数,ηref(k)为参考输入,权重系数ρ=2,松弛因子ε=1,约束条件为:
ΔUmin≤ΔU(k)≤ΔUmax
Umin≤ΞΔU(k)+U(k-1)≤Umax
Ξ为参数矩阵,Umin为控制量约束的最小值,Umax为控制量约束的最大值,ΔUmin为控制增量约束的最小值,ΔUmax为控制增量约束的最大值;
其中
通过OSQP算法求解如下所示的二次规划问题:
6.根据权利要求5所述的基于MPC与FPGA的自动驾驶车辆轨迹跟踪控制方法,其特征在于,所述步骤3基于FPGA实现自动驾驶车辆的轨迹跟踪控制,具体的方法是:
采用Xilinx Zynq-7000 FPGA芯片实现算法的硬件实现,首先进行算法的Matlab仿真,然后将模型预测控制算法通过Vivado软件使用verilog进行开发包括算法的设计、实现和测试,最后将算法在FPGA芯片中进行实际的测试,并在实际的车辆上进行验证。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211578769.2A CN116088498A (zh) | 2022-12-05 | 2022-12-05 | 一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211578769.2A CN116088498A (zh) | 2022-12-05 | 2022-12-05 | 一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116088498A true CN116088498A (zh) | 2023-05-09 |
Family
ID=86203475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211578769.2A Pending CN116088498A (zh) | 2022-12-05 | 2022-12-05 | 一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116088498A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117360544A (zh) * | 2023-11-14 | 2024-01-09 | 海南大学 | 一种基于drl-mpc的自动驾驶车辆横向控制方法 |
-
2022
- 2022-12-05 CN CN202211578769.2A patent/CN116088498A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117360544A (zh) * | 2023-11-14 | 2024-01-09 | 海南大学 | 一种基于drl-mpc的自动驾驶车辆横向控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114348026B (zh) | 一种车辆控制方法、装置、设备以及存储介质 | |
CN112180925B (zh) | Agv轨迹跟随方法、装置及处理设备 | |
CN111258218B (zh) | 基于最大相关熵准则的智能车辆路径跟踪方法 | |
CN113001542B (zh) | 一种机器人轨迹规划方法、装置、可读存储介质及机器人 | |
CN116088498A (zh) | 一种基于mpc与fpga的自动驾驶车辆轨迹跟踪控制方法 | |
CN113759707B (zh) | 用于自动驾驶车辆的预测控制优化方法和装置 | |
CN114370793A (zh) | 一种火箭子级返回与垂直着陆制导方法 | |
CN113771829A (zh) | 用于自动驾驶车辆的控制方法和装置 | |
Zhang et al. | Low-level control technology of micro autonomous underwater vehicle based on intelligent computing | |
CN111624872B (zh) | 一种基于自适应动态规划的pid控制器参数整定方法及系统 | |
CN110550239B (zh) | 基于饱和反步法的航天器分布式姿态超敏捷机动控制方法 | |
CN116512256A (zh) | 基于联合学习的机器人最优人机交互阻抗控制方法、存储介质及机器人 | |
Wang et al. | Path Tracking Method Based on Model Predictive Control and Genetic Algorithm for Autonomous Vehicle | |
Ge et al. | Motion control of autonomous vehicles based on offset free model predictive control methods | |
Wang et al. | Adaptive finite‐time fault‐tolerant control for flexible‐joint robotic stochastic systems with input saturation and sensor fault | |
CN114967472A (zh) | 一种无人机轨迹跟踪状态补偿深度确定性策略梯度控制方法 | |
CN113778082A (zh) | 一种基于自触发机制的无人车轨迹跟踪控制方法及系统 | |
CN113296515A (zh) | 一种双独立电驱动车辆显式模型预测路径跟踪方法 | |
CN113985887A (zh) | 差速移动机器人运动轨迹生成方法和运动控制装置 | |
Chen et al. | Prescribed‐time stabilisation control of differential driven automated guided vehicle | |
Chen et al. | An easy-implemented optimization method of trajectory planning based on polynomial interpolation | |
Meng et al. | Variable step MPC trajectory tracking control method for intelligent vehicle | |
CN114003030B (zh) | 考虑质心变化的两轮差动移动机器人路径跟踪控制方法 | |
Liu et al. | Quantized control with applications to mobile vehicles | |
CN116165890A (zh) | 一种面向人机交互过程的模糊近似分数阶控制方法 |
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 |