CN116047888A - 一种基于bp神经网络pid的自平衡车的控制方法 - Google Patents
一种基于bp神经网络pid的自平衡车的控制方法 Download PDFInfo
- Publication number
- CN116047888A CN116047888A CN202310002402.4A CN202310002402A CN116047888A CN 116047888 A CN116047888 A CN 116047888A CN 202310002402 A CN202310002402 A CN 202310002402A CN 116047888 A CN116047888 A CN 116047888A
- Authority
- CN
- China
- Prior art keywords
- output
- layer
- neural network
- pid
- self
- 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
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 66
- 238000000034 method Methods 0.000 title claims abstract description 17
- 210000002569 neuron Anatomy 0.000 claims abstract description 22
- 230000006870 function Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 6
- 238000004088 simulation Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000005284 excitation Effects 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
- G05B11/42—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P. I., P. I. D.
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种基于BP神经网络PID的自平衡车的控制方法,包括确定BP神经网络的结构中的输入层节点及数目和隐含层数目,并给出各层权系数的初值和选定学习率、惯性系数;设k=1,采样得到r(k)、y(k),计算该时刻误差e(k);计算BP神经网络各层神经元的输入、输出,输出层的输出为PID控制器的三个可调参数;计算PID控制器的输出u(k);进行BP神经网络学习,在线调整权值系数,实现PID控制参数的调整;置k=k+1,返回到S1继续。本发明通过BP神经网络PID取得了较传统PID更好的控制效果。
Description
技术领域
本发明涉及自平衡小车智能控制技术领域,具体为一种基于BP神经网络PID的自平衡车的控制方法。
背景技术
两轮自平衡车本质上是一种倒立摆机器人。它简单的机械结构使得它能够在狭小的空间内工作,也能够作为代步工具缓解交通压力,具有很好的应用前景。因为两轮自平衡车静态不稳定的特点,所以两轮自平衡车又被视作检验控制的经典平台。
两轮自平衡车地研究难点在于其自平衡控制。如何调整倾斜角度,使自身保持在一种稳定的状态。传统的PID控制虽然控制算法简单,鲁棒性好。但是在实际的工业控制中,由于被控对象具有非线性等特性,难以建立精确的数学模型并且控制器参数难以自动调整来适应外界的环境变化,从而使其应用受到限制。
发明内容
本发明提供一种基于BP神经网络PID的自平衡车的控制方法,解决了传统的PID控制,在实际的工业控制中,由于被控对象具有非线性等特性,难以建立精确的数学模型并且控制器参数难以自动调整来适应外界的环境变化,应用受到限制的问题。
为实现上述目的,本发明提供如下技术方案:一种基于BP神经网络PID的自平衡车的控制方法,包括以下步骤:
S1、确定BP神经网络的结构中的输入层节点及数目和隐含层数目,并给出各层权系数的初值和选定学习率、惯性系数;
S2、设k=1,采样得到r(k)、y(k),计算该时刻误差e(k);
S3、计算BP神经网络各层神经元的输入、输出,输出层的输出为PID控制器的三个可调参数;
S4、计算PID控制器的输出u(k);
S5、进行BP神经网络学习,在线调整权值系数,实现PID控制参数的调整;
S6、置k=k+1,返回到S1继续。
优选的,所述BP神经网络的结构包括输入层、隐含层和输出层,且各层的神经元之间相互连接,而同层内的神经元之间没有连接,每一层的神经元只对前一层神经元输入敏感,每一层神经元的输出只影响下一层的输出。
优选的,BP神经网络的学习过程包括信息的正向传播和误差的反向传播,当输出层没有输出理想值时,则进行反向传播,将误差信号返回通路,通过修改各层神经元的连接权值使得最终实际输出与期望输出值之间的误差最小。
优选的,BP神经网络的输入为:
网络隐含层的输入、输出为:
其中,wij为隐含层的权值系数,上标(1)、(2)、(3)分别表示输入层、隐含层和输出层,f(x)表示隐含层激活函数。
优选的,网络输出层三个节点的输入、输出为:
输出层输出即为PID的三个参数:
其中,wli为输出层的权值系数,输出层的激活函数为g(x)。
优选的,通过所述BP神经网络计算出的PID控制器具体步骤包括:
1)PID控制器采用增量式PID,控制误差e(k)=r(k)-y(k),则PID控制器三项输入为:
xc(1)=e(k)-e(k-1)
xc(2)=e(k)
xc(3)=e(k)-2e(k-1)+e(k-2);
2)控制算法为:
u(k)=u(k-1)+Δu(k)
Δu(k)=kp(e(k)-e(k-1))+kie(k)+kd(e(k)-2e(k-1)+e(k-2))
3)同时采用以输出误差的二次方为性能指标,其性能指标函数为:
其中,r(k)为输入量,y(k)为输出量。
优选的,采用梯度下降法对权值进行调整:
其中,ρ为学习速率,γ为惯性系数;
并根据:
求得:
因此,得出输出层权值相应的计算公式:
同理,求出隐含层权值计算公式:
与现有技术相比,本发明的有益效果:
1、本发明可以对复杂系统有较好的控制效果,并且能取得较好的控制效果。通过BP神经网络技术和PID控制器结合在一起是一种智能控制器,神经网络PID控制集BP神经网络和传统PID控制的优点于一体,将BP神经网络具有的学习模式引入到PID控制器中,按照一定的目标,在线调整PID控制器的参数,使之适应被控系统由于参数、结构以及输入的变化,并且让被干扰的影响达到最小。
2、本发明中通过将BP神经网络引入至PID控制器中,提高控制了效率;可以多输入、多输出;可以最大化近似任何复杂非线性关系;能进行学习;如识别图像时,在BP神经网络中输入相应的图像和应该识别的结果,BP神经网络会通过它的自学习能力就可以实现识别类似图像的功能,可在面对复杂的系统建模和控制时具有很好的优势。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
在附图中:
图1是本发明BP神经网络的结构图;
图2是本发明BP神经网络PID控制结构图;
图3是本发明两轮自平衡车BP神经网络PID的Simulink仿真模图;
图4是本发明BP-PIDS-Function模块示意图;
图5是本发明BP-PID控制器Simulink仿真模型图;
图6是本发明阶跃信号输入图;
图7是本发明正弦信号输入图;
图8是本发明PID控制的仿真模块图;
图9是本发明阶跃信号下传统PID控制的角度曲线图;
图10是本发明正弦信号下传统PID控制的角度曲线图;
图11是本发明阶跃信号下BP-PID控制的角度曲线图;
图12是本发明阶跃信号下BP-PID控制输出的PID参数变化曲线图;
图13是本发明正弦信号下BP-PID控制的角度曲线图;
图14是本发明正弦信号下BP-PID控制输出的PID参数变化曲线图;
图15是本发明阶跃信号下受不同干扰力的角度变化曲线图;
图16是本发明正弦信号下受不同干扰力的角度变化曲线图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例:如图1和图2所示,一种基于BP神经网络PID的自平衡车的控制方法,包括以下步骤:
S1、确定BP神经网络的结构中的输入层节点及数目和隐含层数目,并给出各层权系数的初值和选定学习率、惯性系数;
BP神经网络的结构包括输入层、隐含层和输出层,且各层的神经元之间相互连接,而同层内的神经元之间没有连接,每一层的神经元只对前一层神经元输入敏感,每一层神经元的输出只影响下一层的输出;BP神经网络的学习过程包括信息的正向传播和误差的反向传播,当输出层没有输出理想值时,则进行反向传播,将误差信号返回通路,通过修改各层神经元的连接权值使得最终实际输出与期望输出值之间的误差最小;
其中,BP神经网络的输入为:
网络隐含层的输入、输出为:
其中,wij为隐含层的权值系数,上标(1)、(2)、(3)分别表示输入层、隐含层和输出层,f(x)表示隐含层激活函数;
S2、设k=1,采样得到r(k)、y(k),计算该时刻误差e(k);
S3、计算BP神经网络各层神经元的输入、输出,输出层的输出为PID控制器的三个可调参数;
网络输出层三个节点的输入、输出为:
输出层输出即为PID的三个参数:
其中,wli为输出层的权值系数,输出层的激活函数为g(x);
S4、计算PID控制器的输出u(k);
S5、进行BP神经网络学习,在线调整权值系数,实现PID控制参数的调整;
通过所述BP神经网络计算出的PID控制器具体步骤包括:
1)PID控制器采用增量式PID,控制误差e(k)=r(k)-y(k),则PID控制器三项输入为:
xc(1)=e(k)-e(k-1)
xc(2)=e(k)
xc(3)=e(k)-2e(k-1)+e(k-2);
2)控制算法为:
u(k)=u(k-1)+Δu(k)
Δu(k)=kp(e(k)-e(k-1))+kie(k)+kd(e(k)-2e(k-1)+e(k-2))
3)同时采用以输出误差的二次方为性能指标,其性能指标函数为:
其中,r(k)为输入量,y(k)为输出量;
并采用梯度下降法对权值进行调整:
其中,ρ为学习速率,γ为惯性系数;
并根据:
求得:
因此,得出输出层权值相应的计算公式:
同理,求出隐含层权值计算公式:
S6、置k=k+1,返回到S1继续。
如图3所示为两轮自平衡车BP神经网络PID的Simulink模型,输入为期望值,本发明期望自平衡车的倾角为0,BP-PID控制器根据期望值和实际输出值之间的误差进行调整输出控制力矩给自平衡车。图5所示为BP-PID控制器Simulink仿真模型。由于BP神经网络PID控制器不能直接在Simulink中简单表示,需要应用Simulink中的S-Function模块,如图4所示即为BP神经网络的S-Function模块,控制算法就封装在S-Function模块中。
并通过上述控制算法进行仿真分析,首先对输入信号部分做了介绍,用阶跃信号和正弦信号来表示两轮自平衡车的不同外部激励;然后给出权值、PID参数等初值,带入控制器中进行仿真,其中,自平衡车外部激励就是给平衡车一个外部的干扰信号。分别以阶跃信号和正弦信号作为外部激励。在前文两轮自平衡车仿真模块的基础上,给予自平衡车阶跃信号和正弦信号来模拟两种不同的外部干扰Tc。
1)阶跃信号
自平衡车的外部干扰信号以阶跃信号来模拟。如图6所示,这个信号幅值为1N/m,持续时间为1s。在这1s时间内自平衡车受外部干扰力的影响会出现前倾或后倒,1s后撤掉力矩,然后分析自平衡车的控制效果。
2)正弦信号
用持续时间1s,幅值为1N/m的正弦信号来模拟外部干扰,如图7所示为正弦信号的输入。
(一)传统PID控制的自平衡车仿真分析如下:
如图8所示为传统PID控制的仿真模块图,将两种不同的信号分别输入到系统中进行,PID的三个参数分别为Kp=0.085、Ki=0.05、Kd=0.005。
1)阶跃信号
图9所示为阶跃信号下传统PID控制的角度变化曲线图,自平衡车在0.5s左右时倾角最大为0.082rad,在1.5s左右恢复到平衡位置。
2)正弦信号
图10为正弦信号下传统PID控制的角度曲线图,自平衡车在0.45s左右时的最大倾角约为0.79rad,经过1.5s回到平衡位置。
(二)BP神经网络PID控制的自平衡车仿真分析
进行仿真时,选定学习速率为0.8,惯性系数为0.5,PID三个参数的初值与传统PID控制一致,分别为Kp=0.085、Ki=0.05、Kd=0.005。
1、输入信号幅值为1N/m的仿真分析:
1)阶跃信号
图11为阶跃信号下BP神经网络PID控制的角度曲线变化图。由图分析,在BP神经网络PID控制下,自平衡车在0.5s左右时,最大的倾角约为0.076rad,经过1.3s左右恢复平衡。与传统PID控制相比,最大的倾角小一点,平衡时间也有所缩短。
图12所示为在阶跃信号下PID三个参数在BP神经网络中的调整曲线图。由图可知,Kp在1s左右达到稳定值,Ki和Kd在1.4s左右达到稳定值。最终调整的参数值分别为Kp=0.2,Ki=0.075,Kd=0.01。
2)正弦信号
图13为正弦信号下BP神经网络PID控制的角度曲线变化图。由图知,两轮自平衡车经过BP神经网络PID控制后,在0.4s左右的倾角约为0.059rad,自平衡车在0.8s左右的最大倾角为0.063rad,并在1.3s后恢复平衡。在正弦信号下,其控制效果仍比传统PID控制好。
图14为正弦信号下,PID三个参数在BP神经网络中的调整曲线图。
Kp在0.085rad至0.25rad之间震荡,最后在1.3s左右稳定在0.2rad。Ki在
0.025rad至0.79rad之间震荡,最后的稳定值为0.054。Kd在0.045rad至0.01rad之间波动,稳定值为0.055。与传统PID控制相比,经过BP神经网络PID控制后自平衡车的倾角有所减小,平衡时间也减少了,BP神经网络的控制效果更好。
2、不同幅值干扰信号下的仿真分析
将干扰力矩Tc=1.2N/m和Tc=1.5N/m时的自平衡车角度变化进行对比分析。
1)阶跃信号
图15所示为阶跃信号下受不同干扰力的自平衡车的角度变化曲线图。图中,线1为Tc=1.2N/m时的自平衡车角度变化曲线,在0.46s左右时倾斜角度最大为0.086rad,1.4s之后保持平衡。线2为Tc=1.5N/m时的自平衡车角度变化曲线,在0.46s左右时的最大倾斜角度为0.090rad,经过1.5s恢复平衡。
2)正弦信号
图16所示为正弦信号下受不同干扰力的自平衡车的角度变化曲线图。
图中,线1为Tc=1.2N/m时的自平衡车角度变化曲线,在0.82s左右时倾斜角度最大为0.07rad,1.47s之后保持平衡。线2为Tc=1.5N/m时的自平衡车角度变化曲线,在0.79s左右时的最大倾斜角度为0.072rad,经过1.5s恢复平衡。
并对BP神经网络PID的控制结果进行分析,与传统PID进行对比,结果表示BP神经网络控制确实优于传统PID。
最后应说明的是:以上所述仅为本发明的优选实例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于BP神经网络PID的自平衡车的控制方法,其特征在于,包括以下步骤:
S1、确定BP神经网络的结构中的输入层节点及数目和隐含层数目,并给出各层权系数的初值和选定学习率、惯性系数;
S2、设k=1,采样得到r(k)、y(k),计算该时刻误差e(k);
S3、计算BP神经网络各层神经元的输入、输出,输出层的输出为PID控制器的三个可调参数;
S4、计算PID控制器的输出u(k);
S5、进行BP神经网络学习,在线调整权值系数,实现PID控制参数的调整;
S6、置k=k+1,返回到S1继续。
2.根据权利要求1所述的一种基于BP神经网络PID的自平衡车的控制方法,其特征在于:所述BP神经网络的结构包括输入层、隐含层和输出层,且各层的神经元之间相互连接,而同层内的神经元之间没有连接,每一层的神经元只对前一层神经元输入敏感,每一层神经元的输出只影响下一层的输出。
3.根据权利要求2所述的一种基于BP神经网络PID的自平衡车的控制方法,其特征在于:BP神经网络的学习过程包括信息的正向传播和误差的反向传播,当输出层没有输出理想值时,则进行反向传播,将误差信号返回通路,通过修改各层神经元的连接权值使得最终实际输出与期望输出值之间的误差最小。
6.根据权利要求5所述的一种基于BP神经网络PID的自平衡车的控制方法,其特征在于:通过所述BP神经网络计算出的PID控制器具体步骤包括:
1)PID控制器采用增量式PID,控制误差e(k)=r(k)-y(k),则PID控制器三项输入为:
xc(1)=e(k)-e(k-1)
xc(2)=e(k)
xc(3)=e(k)-2e(k-1)+e(k-2);
2)控制算法为:
u(k)=u(k-1)+Δu(k)
Δu(k)=kp(e(k)-e(k-1))+kie(k)+kd(e(k)-2e(k-1)+e(k-2))
3)同时采用以输出误差的二次方为性能指标,其性能指标函数为:
其中,r(k)为输入量,y(k)为输出量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310002402.4A CN116047888A (zh) | 2023-01-03 | 2023-01-03 | 一种基于bp神经网络pid的自平衡车的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310002402.4A CN116047888A (zh) | 2023-01-03 | 2023-01-03 | 一种基于bp神经网络pid的自平衡车的控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116047888A true CN116047888A (zh) | 2023-05-02 |
Family
ID=86132532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310002402.4A Pending CN116047888A (zh) | 2023-01-03 | 2023-01-03 | 一种基于bp神经网络pid的自平衡车的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116047888A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389134A (zh) * | 2023-12-07 | 2024-01-12 | 中国汽车技术研究中心有限公司 | 一种汽车场地测试移动平台pid参数标定方法及装置 |
-
2023
- 2023-01-03 CN CN202310002402.4A patent/CN116047888A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117389134A (zh) * | 2023-12-07 | 2024-01-12 | 中国汽车技术研究中心有限公司 | 一种汽车场地测试移动平台pid参数标定方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Begnini et al. | A robust adaptive fuzzy variable structure tracking control for the wheeled mobile robot: Simulation and experimental results | |
Ulrich et al. | Modeling and direct adaptive control of a flexible-joint manipulator | |
Atkeson et al. | Robot trajectory learning through practice | |
CN110340898B (zh) | 一种自由漂浮空间机械臂自适应容错控制方法 | |
CN112904728A (zh) | 一种基于改进型趋近律的机械臂滑模控制轨迹跟踪方法 | |
CN109581868B (zh) | 基于评判辨识结构的可重构机器人分散神经最优控制方法 | |
JPH10133703A (ja) | 適応的ロバスト制御装置 | |
Yu et al. | Design of robust adaptive neural switching controller for robotic manipulators with uncertainty and disturbances | |
Qi et al. | Stable indirect adaptive control based on discrete-time T–S fuzzy model | |
Xu et al. | Synthesized design of a fuzzy logic controller for an underactuated unicycle | |
Lendek et al. | Application of Takagi-Sugeno observers for state estimation in a quadrotor | |
Qiu et al. | Model predictive control for uncalibrated and constrained image-based visual servoing without joint velocity measurements | |
CN116047888A (zh) | 一种基于bp神经网络pid的自平衡车的控制方法 | |
Gao et al. | Adaptive integral backstepping control for a 3-DOF helicopter | |
Montano et al. | Orbital stabilization of an underactuated bipedal gait via nonlinear H∞-control using measurement feedback | |
CN111290419A (zh) | 具有时变时滞输入的二轮自平衡车自适应滑模控制方法 | |
Abougarair | Adaptive neural networks based optimal control for stabilizing nonlinear system | |
Hedjar et al. | Feedback nonlinear predictive control of rigid link robot manipulators | |
Khalifa et al. | MPC and DOb-based robust optimal control of a new quadrotor manipulation system | |
Alqaisi et al. | Adaptive control based on radial base function neural network approximation for quadrotor | |
Wu et al. | Neural inverse modeling and control of a base-excited inverted pendulum | |
Famularo et al. | Observer-based feedback adaptive control for nonlinear hypersonic vehicles | |
Gabellieri et al. | Force-based Pose Regulation of a Cable-Suspended Load Using UAVs with Force Bias | |
Fan et al. | Dynamic modelling and model predictive control of flexible-link manipulators | |
Song et al. | Asymptotical stability analysis of “PD+” controller for spacecraft attitude tracking system |
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 |