一种基于BP神经网络PID的自平衡车的控制方法技术

技术编号:37458743 阅读:14 留言:0更新日期:2023-05-06 09:31
本发明专利技术公开了一种基于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更好的控制效果。得了较传统PID更好的控制效果。得了较传统PID更好的控制效果。

【技术实现步骤摘要】
一种基于BP神经网络PID的自平衡车的控制方法


[0001]本专利技术涉及自平衡小车智能控制
,具体为一种基于BP神经网络PID的自平衡车的控制方法。

技术介绍

[0002]两轮自平衡车本质上是一种倒立摆机器人。它简单的机械结构使得它能够在狭小的空间内工作,也能够作为代步工具缓解交通压力,具有很好的应用前景。因为两轮自平衡车静态不稳定的特点,所以两轮自平衡车又被视作检验控制的经典平台。
[0003]两轮自平衡车地研究难点在于其自平衡控制。如何调整倾斜角度,使自身保持在一种稳定的状态。传统的PID控制虽然控制算法简单,鲁棒性好。但是在实际的工业控制中,由于被控对象具有非线性等特性,难以建立精确的数学模型并且控制器参数难以自动调整来适应外界的环境变化,从而使其应用受到限制。

技术实现思路

[0004]本专利技术提供一种基于BP神经网络PID的自平衡车的控制方法,解决了传统的PID控制,在实际的工业控制中,由于被控对象具有非线性等特性,难以建立精确的数学模型并且控制器参数难以自动调整来适应外界的环境变化,应用受到限制的问题。
[0005]为实现上述目的,本专利技术提供如下技术方案:一种基于BP神经网络PID的自平衡车的控制方法,包括以下步骤:
[0006]S1、确定BP神经网络的结构中的输入层节点及数目和隐含层数目,并给出各层权系数的初值和选定学习率、惯性系数;
[0007]S2、设k=1,采样得到r(k)、y(k),计算该时刻误差e(k);
[0008]S3、计算BP神经网络各层神经元的输入、输出,输出层的输出为PID控制器的三个可调参数;
[0009]S4、计算PID控制器的输出u(k);
[0010]S5、进行BP神经网络学习,在线调整权值系数,实现PID控制参数的调整;
[0011]S6、置k=k+1,返回到S1继续。
[0012]优选的,所述BP神经网络的结构包括输入层、隐含层和输出层,且各层的神经元之间相互连接,而同层内的神经元之间没有连接,每一层的神经元只对前一层神经元输入敏感,每一层神经元的输出只影响下一层的输出。
[0013]优选的,BP神经网络的学习过程包括信息的正向传播和误差的反向传播,当输出层没有输出理想值时,则进行反向传播,将误差信号返回通路,通过修改各层神经元的连接权值使得最终实际输出与期望输出值之间的误差最小。
[0014]优选的,BP神经网络的输入为:
[0015][0016]网络隐含层的输入、输出为:
[0017][0018][0019]其中,w
ij
为隐含层的权值系数,上标(1)、(2)、(3)分别表示输入层、隐含层和输出层,f(x)表示隐含层激活函数。
[0020]优选的,网络输出层三个节点的输入、输出为:
[0021][0022][0023]输出层输出即为PID的三个参数:
[0024][0025]其中,w
li
为输出层的权值系数,输出层的激活函数为g(x)。
[0026]优选的,通过所述BP神经网络计算出的PID控制器具体步骤包括:
[0027]1)PID控制器采用增量式PID,控制误差e(k)=r(k)

y(k),则PID控制器三项输入为:
[0028]xc(1)=e(k)

e(k

1)
[0029]xc(2)=e(k)
[0030]xc(3)=e(k)

2e(k

1)+e(k

2);
[0031]2)控制算法为:
[0032]u(k)=u(k

1)+Δu(k)
[0033]Δu(k)=k
p
(e(k)

e(k

1))+k
i
e(k)+k
d
(e(k)

2e(k

1)+e(k

2))
[0034]3)同时采用以输出误差的二次方为性能指标,其性能指标函数为:
[0035][0036]其中,r(k)为输入量,y(k)为输出量。
[0037]优选的,采用梯度下降法对权值进行调整:
[0038][0039][0040]其中,ρ为学习速率,γ为惯性系数;
[0041]并根据:
[0042][0043]求得:
[0044][0045]因此,得出输出层权值相应的计算公式:
[0046][0047][0048]同理,求出隐含层权值计算公式:
[0049][0050][0051]与现有技术相比,本专利技术的有益效果:
[0052]1、本专利技术可以对复杂系统有较好的控制效果,并且能取得较好的控制效果。通过BP神经网络技术和PID控制器结合在一起是一种智能控制器,神经网络PID控制集BP神经网络和传统PID控制的优点于一体,将BP神经网络具有的学习模式引入到PID控制器中,按照一定的目标,在线调整PID控制器的参数,使之适应被控系统由于参数、结构以及输入的变化,并且让被干扰的影响达到最小。
[0053]2、本专利技术中通过将BP神经网络引入至PID控制器中,提高控制了效率;可以多输入、多输出;可以最大化近似任何复杂非线性关系;能进行学习;如识别图像时,在BP神经网络中输入相应的图像和应该识别的结果,BP神经网络会通过它的自学习能力就可以实现识别类似图像的功能,可在面对复杂的系统建模和控制时具有很好的优势。
附图说明
[0054]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。
[0055]在附图中:
[0056]图1是本专利技术BP神经网络的结构图;
[0057]图2是本专利技术BP神经网络PID控制结构图;
[0058]图3是本专利技术两轮自平衡车BP神经网络PID的Simulink仿真模图;
[0059]图4是本专利技术BP

PIDS

Function模块示意图;
[0060]图5是本专利技术BP

PID控制器Simulink仿真模型图;
[0061]图6是本专利技术阶跃信号输入图;
[0062]图7是本专利技术正弦信号输入图;
[0063]图8是本专利技术PID控制的仿真模块图;
[0064]图9是本专利技术阶跃信号下传统PID控制的角度曲线图;
[0065]图10是本专利技术正弦信号下传统PID控制的角度曲线图;
[0066]图11是本专利技术阶跃信号下BP

PID控制的角度曲线图;
[0067]图12是本专利技术阶跃信号下BP

PID控制输出的PID参数变化曲线图;
[0068]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
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神经网络的学习过程包括信息的正向传播和误差的反向传播,当输出层没有输出理想值时,则进行反向传播,将误差信号返回通路,通过修改各层神经元的连接权值使得最终实际输出与期望输出值之间的误差最小。4.根据权利要求3所述的一种基于BP神经网络PID的自平衡车的控制方法,其特征在于:BP神经网络的输入为:网络隐含层的输入、输出为:网络隐含层的输入、输出为:其中,w
ij
为隐含层的权值系数,上标(1)、(2)、(3)分别表示输入层、隐含层和输出层,f(x)表示隐含层激活函数。5.根据权利要求4所述的一种基于BP神经网络PID的自平衡车的控制方法,其特征在于:网络输出层三个节点的输入、输出为:于:网络输出层三个节点的输入、输出为:输出层...

【专利技术属性】
技术研发人员:芮舒扬曹登阳孙嵩松龚小林台永鹏张子璇
申请(专利权)人:南京林业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1