发明名称 一种伺服电机的基于微分器的直接神经网络控制方法
摘要 本发明一种伺服电机的基于微分器的直接神经网络控制方法,它有五大步骤:步骤一:伺服电机系统模型分析及建模;步骤二:伺服电机系统微分器设计;步骤三:伺服电机的直接神经网络控制设计;步骤四:跟踪性能检验与参数调节;步骤五:设计结束。本发明针对伺服电机系统,首先设计微分器,得出伺服电机系统的转角,速度和加速度,然后设计直接神经网络控制器,最后使用微分器得到的信号作为直接神经网络控制器的输入信号,实现对伺服电机系统的转角快速精确的控制。它在自动控制技术领域里具有较好的实用价值和广阔地应用前景。
申请公布号 CN102591203A 申请公布日期 2012.07.18
申请号 CN201210035873.7 申请日期 2012.02.17
申请人 南京国电环保设备有限公司 发明人 刘建民;王强;刘金琨
分类号 G05B13/00(2006.01)I 主分类号 G05B13/00(2006.01)I
代理机构 北京慧泉知识产权代理有限公司 11232 代理人 王顺荣;唐爱华
主权项 1.一种伺服电机的基于微分器的直接神经网络控制方法,其特征在于:该方法具体步骤如下:步骤一:伺服电机系统模型分析及建模:伺服电机系统采用负反馈的控制结构,输出量为伺服电机系统转角;伺服电机系统传递函数描述如下:<maths num="0001"><![CDATA[<math><mrow><msub><mi>G</mi><mi>d</mi></msub><mrow><mo>(</mo><mi>s</mi><mo>)</mo></mrow><mo>=</mo><mfrac><msub><mi>K</mi><mi>m</mi></msub><mrow><mi>s</mi><mo>[</mo><mi>J</mi><msub><mi>L</mi><mi>d</mi></msub><msup><mi>s</mi><mn>2</mn></msup><mo>+</mo><mrow><mo>(</mo><mi>J</mi><msub><mi>R</mi><mi>d</mi></msub><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub><msub><mi>L</mi><mi>d</mi></msub><mo>)</mo></mrow><mi>s</mi><mo>+</mo><mrow><mo>(</mo><msub><mi>R</mi><mi>d</mi></msub><msub><mi>f</mi><mn>0</mn></msub><mo>+</mo><msub><mi>K</mi><mi>e</mi></msub><msub><mi>K</mi><mi>m</mi></msub><mo>)</mo></mrow><mo>]</mo></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中:K<sub>m</sub>表示伺服电机的力矩系数;J表示汽轮发电机功角初值;L<sub>d</sub>表示伺服电机系统电枢绕组的电感;R<sub>d</sub>表示伺服电机系统电枢绕组的电阻;f<sub>0</sub>表示阻尼系数;K<sub>e</sub>表示伺服电机系统反电势系数;为了便于设计,分别定义三个状态变量x<sub>1</sub>、x<sub>2</sub>、x<sub>3</sub>如下:x<sub>1</sub>=θx<sub>2</sub>=ω<maths num="0002"><![CDATA[<math><mrow><msub><mi>x</mi><mn>3</mn></msub><mo>=</mo><mover><mi>&omega;</mi><mo>&CenterDot;</mo></mover></mrow></math>]]></maths>这时(1)就写成<maths num="0003"><![CDATA[<math><mrow><msub><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mn>1</mn></msub><mo>=</mo><msub><mi>x</mi><mn>2</mn></msub></mrow></math>]]></maths><maths num="0004"><![CDATA[<math><mrow><msub><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mn>2</mn></msub><mo>=</mo><msub><mi>x</mi><mn>3</mn></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0005"><![CDATA[<math><mrow><msub><mover><mi>x</mi><mo>&CenterDot;</mo></mover><mn>3</mn></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mi>J</mi><msub><mi>L</mi><mi>d</mi></msub></mrow></mfrac><mo>[</mo><msub><mi>K</mi><mi>m</mi></msub><mi>u</mi><mo>-</mo><mrow><mo>(</mo><mi>J</mi><msub><mi>R</mi><mi>d</mi></msub><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub><msub><mi>L</mi><mi>d</mi></msub><mo>)</mo></mrow><msub><mi>x</mi><mn>3</mn></msub><mo>-</mo><mrow><mo>(</mo><msub><mi>R</mi><mi>d</mi></msub><msub><mi>f</mi><mn>0</mn></msub><mo>+</mo><msub><mi>K</mi><mi>e</mi></msub><msub><mi>K</mi><mi>m</mi></msub><mo>)</mo></mrow><msub><mi>x</mi><mn>2</mn></msub><mo>]</mo></mrow></math>]]></maths>如此处理的目的是将伺服电机系统化为状态方程的表达形式,便于下一步设计;步骤二:伺服电机系统微分器设计伺服电机系统的微分器采用高增益微分器,高增益微分器是指在增益趋于无穷大的时候,对给定信号提供准确的时间导数;针对伺服电机系统的三阶高增益微分器表达为<maths num="0006"><![CDATA[<math><mrow><msub><mover><mover><mi>x</mi><mo>^</mo></mover><mo>&CenterDot;</mo></mover><mn>1</mn></msub><mo>=</mo><msub><mover><mi>x</mi><mo>^</mo></mover><mn>2</mn></msub><mo>-</mo><mfrac><msub><mi>k</mi><mn>3</mn></msub><mi>&epsiv;</mi></mfrac><mrow><mo>(</mo><msub><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn></msub><mo>-</mo><msub><mi>x</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0007"><![CDATA[<math><mrow><msub><mover><mover><mi>x</mi><mo>^</mo></mover><mo>&CenterDot;</mo></mover><mn>2</mn></msub><mo>=</mo><msub><mover><mi>x</mi><mo>^</mo></mover><mn>3</mn></msub><mo>-</mo><mfrac><msub><mi>k</mi><mn>2</mn></msub><mi>&epsiv;</mi></mfrac><mrow><mo>(</mo><msub><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn></msub><mo>-</mo><msub><mi>x</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0008"><![CDATA[<math><mrow><msub><mover><mover><mi>x</mi><mo>^</mo></mover><mo>&CenterDot;</mo></mover><mn>3</mn></msub><mo>=</mo><mo>-</mo><mfrac><msub><mi>k</mi><mn>1</mn></msub><msup><mi>&epsiv;</mi><mn>2</mn></msup></mfrac><mrow><mo>(</mo><msub><mover><mi>x</mi><mo>^</mo></mover><mn>1</mn></msub><mo>-</mo><msub><mi>x</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow></mrow></math>]]></maths>其中s<sup>3</sup>+k<sub>1</sub>s<sup>2</sup>+k<sub>2</sub>s+k<sub>3</sub>=0满足Hurwitz条件,则<img file="FDA0000136314790000024.GIF" wi="603" he="52" />步骤三:伺服电机的直接神经网络控制设计采用输出量即角度信号的单位负反馈控制结构,利用Matlab 7.0环境下的.m语言编程实现主汽门开度动态面控制器的结构和功能;即控制器的输入信号是参考信号和步骤二中微分器的输出值;1)设定预定轨迹x<sub>1d</sub>,与微分器的状态<img file="FDA0000136314790000025.GIF" wi="276" he="61" />相减得到<img file="FDA0000136314790000026.GIF" wi="508" he="65" /><img file="FDA0000136314790000027.GIF" wi="233" he="80" />取滑模函数<img file="FDA0000136314790000028.GIF" wi="324" he="65" />为设计方便去中间变量<img file="FDA0000136314790000029.GIF" wi="383" he="65" />2)取网络的权向量W=[w<sub>1</sub>,…,w<sub>m</sub>]<sup>T</sup>的初值,取向量<maths num="0009"><![CDATA[<math><mrow><mi>z</mi><mo>=</mo><msup><mfenced open='[' close=']'><mtable><mtr><mtd><msup><mover><mi>x</mi><mo>^</mo></mover><mi>T</mi></msup></mtd><mtd><mover><mi>s</mi><mo>^</mo></mover></mtd><mtd><mover><mi>v</mi><mo>^</mo></mover></mtd></mtr></mtable></mfenced><mi>T</mi></msup><mo>,</mo></mrow></math>]]></maths>取神经网络基函数<maths num="0010"><![CDATA[<math><mrow><msub><mi>h</mi><mi>j</mi></msub><mo>=</mo><mi>exp</mi><mrow><mo>(</mo><mo>-</mo><mfrac><msup><mrow><mo>|</mo><mo>|</mo><mi>x</mi><mo>-</mo><msub><mi>c</mi><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn></msup><mrow><mn>2</mn><msubsup><mi>b</mi><mi>j</mi><mn>2</mn></msubsup></mrow></mfrac><mo>)</mo></mrow><mo>,</mo><mi>j</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mi>m</mi></mrow></math>]]></maths>3)根在以上两步的基础上取基于微分器的直接神经网络控制方法的控制器输出为<img file="FDA00001363147900000212.GIF" wi="258" he="63" />这里通过李雅普诺夫方法简要证明基于微分器的直接神经网络控制的稳定性;取<img file="FDA00001363147900000213.GIF" wi="320" he="60" />e=x<sub>1</sub>-x<sub>1d</sub>;设李雅普诺夫函数<img file="FDA00001363147900000214.GIF" wi="183" he="105" />求得<img file="FDA00001363147900000215.GIF" wi="307" he="70" />其中α<sub>0</sub>>0,Δ是一有界正数,从而得到基于微分器的直接神经网络控制的渐进稳定性;步骤四:跟踪性能检验与参数调节这一步将检验系统性能是否满足设计要求,并且适当调节控制参数,借助于常用的数值计算和控制系统仿真工具Matlab 7.0进行;参数c<sub>1</sub>、c<sub>2</sub>、Γ、σ、k<sub>1</sub>,k<sub>2</sub>,k<sub>3</sub>,ε,h为调节参数;若跟踪误差过大,不满足设计要求,则调节以上参数使控制算法满足要求;步骤五:设计结束整个设计过程重点考虑了三个方面的控制需求,分别为设计的简便性,闭环系统的稳定性,跟踪的快速精确性;围绕这三个方面,首先在上述第一步中确定了闭环控制系统的具体构成;第二步中重点给出了伺服电机系统微分器设计方法;第三步给出了直接神经网络控制方法;第四步中介绍了用以提高跟踪性能的参数调节方法;经上述各步骤后,设计结束。
地址 210061 江苏省南京市高新技术产业开发区高科五路28号楼314室