一种基于bp神经网络调节pi控制器参数的电路及方法

文档序号:8512150阅读:922来源:国知局
一种基于bp神经网络调节pi控制器参数的电路及方法
【技术领域】
[0001] 本发明设计一种电机控制领域电机速度调节问题,涉及一种基于BP神经网络整 定PI参数的电路实现方法。
【背景技术】 [0002] 在电机控制领域的实际应用中,被控对象具有非线性、时变不确定性、滞 后性等特点,尤其是在噪声、负载扰动等因素的影响下,控制过程的参数甚至模型结构均会 随时间推移受工作环境的变化而变化,而普通的控制方法不能很好的适应这种复杂多变的 控制过程的变化而导致无法实现精确,快速地控制。
[0003] 传统的电机控制算法在速度控制环节采用的是传统的PID控制算法(比例积分微 分控制算法Proportion Integration Differentiation),而传统的PID算法的存在参数自 整定难,且对于无精确的数学模型和非线性场合,不能达到理想的控制效果。
[0004] BP神经网络(Back Propagation),作为一种并行的计算模型,具有传统建模方法 所不具有的优势:极佳的非线性映射能力,它一般无需预知被建模对象的结构、参数、动态 特性等知识,只需给出被控对象的输入、输出数据,就可以通过网络自身的学习实现输入与 输出变量的动态调节,使实际值与理论值的误差达到最小。基于以上优点,神经网络算法在 智能控制领域具有很大的发展潜力。
[0005] 目前对于BP神经网络调节PI参数的应用都停留在软件层面的仿真与编程,处理 速度慢,无法满足实时性需求,且占用大量的CPU资源,从根本上失去了神经网络大量并行 计算,分布式存储的优点,在实时控制领域存在很大的局限性。再者,由于纯软件方式意味 着较高软件维护成本,其代码可靠性很大程度上依赖于编程以及测试人员的经验和专业 性,不容易把控。如果能采用集成电路的数字实现方法,能够有效的克服以上问题,充分发 挥神经网络并行处理,和分布式存储的优势,从而使神经网络的功能达到最佳。同时,对算 法进行优化,节省了大量的硬件资源,且可通过编程配置神经元的个数,大大提高了其灵活 性和适用性。
[0006] 将BP神经网络整定PI参数硬件化,作为微处理器的一个外设,开发人员只需配置 相应的参数,无需编程就可实现BP神经网络整定PI参数算法的应用,极大地降低技术门 槛,无需精通BP神经网络等智能控制,缩短了开发周期,可靠性也更容易得到保证。硬件化 还带来一个好处,几乎没有软件维护成本。
[0007] 因此,提供一种基于BP神经网络数字电路,已成为本领域技术人员亟待解决的技 术难题。

【发明内容】

[0008] 为了克服现有技术中存在的缺陷,本发明提供一种通过硬件电路来实现的基于BP 神经网络调节PI控制器参数的电路,以及一种基于BP神经网络调节PI控制器参数的方 法。
[0009] 为了实现上述发明目的,本发明公开一种基于BP神经网络调节PI控制器参数的 电路,用于根据一状态参数输出该PI控制器的输入参数,包括:一输入层单元,用于根据该 状态参数生成一输入层输出;一隐含层单元,用于根据该输入层输出以及一输入-隐含权 值生成一隐含层输出;一输出层单元,用于根据该隐含层输出以及一隐含-输出权值生成 该PI控制器的输入参数;一隐含-输出权值调整单元,用于根据该隐含层输出、该PI控制 器的输入参数以及该状态参数生成该隐含-输出权值;一输入-隐含权值调整单元,用于根 据该输入层输出、该隐含层输出以及该隐含-输出权值生成该输入-隐含权值。
[0010] 更进一步地,该状态参数为输入量、输出量、误差量和反馈量。
[0011] 更进一步地,该隐含层单元包括一计数器、一乘法器、累加器,以及一 CORDIC运算 单元,该输入层输出以及该输入-隐含权值作为该乘法器的输入值,该乘法器的输出值经 该累加器累加后进入该CORDIC运算单元以生成该隐含层输出。
[0012] 更进一步地,该输出层单元包括一计数器、一乘法器、累加器,以及一 CORDIC运算 单元,该隐含层输出以及该隐含-输出权值作为该乘法器的输入值,该乘法器的输出值经 该累加器累加后进入该CORDIC运算单元以生成该输出层输出;或该输出层单元包括一计 数器、一乘法器、累加器,该隐含层输出以及该隐含-输出权值作为该乘法器的输入值,该 乘法器的输出值经该累加器累加后输出。
[0013] 更进一步地,该隐含-输出权值调整单元包括一符号检测单元、计数器、第一、第 二减法器、第一第二乘法器以及第一第二加法器,该符号检测单元的输出连接该第一乘法 器的输入,该状态参数的反馈量经该第一减法器输出至该第一乘法器,该PI控制器的输入 参数经该第二减法器输出至该第一乘法器,该隐含层输出与该第一乘法器的输出作为该第 二乘法器的输入,该第二乘法器的输出值作为该第一加法器的输入值,该第一加法器的输 出值返回至该第一乘法器,该第一加法器的输出值作为该第二加法器的累加值,直至生成 该隐含-输出权值。
[0014] 更进一步地,该隐含-输出权值调整单元还包括一惯性系数和/或学习速率,该惯 性系数和/或学习速率作为该第二乘法器的输入值。
[0015] 更进一步地,该输入-隐含权值调整单元包括一计数器、第一、第二、第三乘法器、 第一、第二加法器、第一减法器以及第一、第二累加器,该隐含-输出权值为该第一乘法器 的输入值,该第一乘法器的输出值经该第一累加器累加后至该第二乘法器;该隐含层输出 分别经该第一加法器相加,该第一减法器相减后作为该第二乘法器的输入;该第二乘法器 的输出及该输入层输出作为第三乘法器的输入值;该第三乘法器的输出值作为该第二加法 器的输入值;该第二加法器的输出值返回至第三乘法器作为输入;该第二加法器的输出值 经该第二累加器累加直至生成该输入-隐含权值。
[0016] 更进一步地,该输入-隐含权值调整单元还包括一惯性系数和/或学习速率,该惯 性系数和/或学习速率作为该第三乘法器的输入值。
[0017] 更进一步地,该PI控制器包括一减法器、一乘法器以及加法器,该状态参数的误 差量经该减法器输出至该乘法器,该PI控制器的输入参数作为该乘法器的另一输入值,该 乘法器的输出值经该加法器相加后输出。
[0018] 本发明同时公开一种基于BP神经网络调节PI控制器参数的方法,用于根据一状 态参数输出该PI控制器的输入参数Ki,Kp,包括:步骤一、根据该状态参数生成一输入层输 出Oi ;步骤二、根据该输入层输出Oi和一输入-隐含权值Wji生成一隐含层输出Oj ;步骤 三、根据该隐含层输出Oj以及一隐含-输出权值Wli生成该PI控制器的输入参数Ki,Kp ; 隐含-输出权值Wli由该隐含层输出Oj、该PI控制器的输入参数Ki,Kp以及该状态参数生 成,该输入-隐含权值Wji由输入层输出Oi、该隐含层输出Oj以及该隐含-输出权值Wli 生成。
[0019] 更进一步地,包括:该状态参数为输入量r(t)、输出量Λ (U)、误差量e(k)和反馈 量y。
[0020] 与现有技术相比较,本发明的优点如下:第一本发明是通过数字电路的方式,利用 硬件设备实现神经网络的大量并行计算,实现分布式存储的优点。第二、本发明处理速度 快,能充分利用BP神经网络优良的非线性函数逼近能力以及并行计算分布式存储的优点, 在复杂多变的应用环境下,对电机速度进行实时控制,从而获得更好的控制效果。
【附图说明】
[0021] 关于本发明的优点与精神可以通过以下的发明详述及所附图得到进一步的了解。
[0022] 图1为本发明的基于BP神经网络调节PI参数的结构图;
[0023] 图2为本发明的基于BP神经网络调节PI参数的整体硬件架构图;
[0024] 图3为本发明的基于BP神经网络调节PI参数的隐含层单元结构图;
[0025] 图4为本发明的基于BP神经网络调节PI参数的隐含层单元具体实例结构图;
[0026] 图5为本发明的基于BP神经网络调节PI参数的输出层单元具体实例结构图;
[0027] 图6为本发明的基于BP神经网络调节PI参数的输出层单元结构图;
[0028] 图7为本发明的基于BP神经网络调节PI参数的隐含-输出权值调整单元结构 图;
[0029] 图8为本发明的基于BP神经网络调节PI参数的输入-隐含权值调整单元结构 图;
[0030] 图9为本发明的基于BP神经网络调节PI参数的PI单元结构图;
[0031] 图10为三层BP神经网络的基本结构图。
【具体实施方式】
[0032] 下面结合附图详细说明本发明的具体实施例。
[0033] 对于BP神经网络,理论上已经证明,三层BP神经网络可以逼近任意复杂的非线性 函数,因此本设计也为三层BP神经网络。请参看图10,为三层BP神经网络的基本结构图, 包含输入层,隐含层,输出层三个单元。其中,输入层、隐含层、输出层神经元个数分别为M, P,Q0
[0034
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1