主权项 |
1.一种仿生机器鱼运动的CPG反馈控制方法,其特征在于,基于仿生机器鱼不同反馈接收部位,针对高层控制模块、中枢模式发生器、仿生机器鱼的运动神经元建立相应的中枢模式发生器反馈控制模型,高层控制模块接收仿生机器鱼本体状态信息和水域环境信息,对仿生机器鱼本体状态信息和水域环境信息进行处理和智能决策并发出相应的控制命令,选择仿生机器鱼的运动模板,进而确定的中枢模式发生器构型,控制仿生机器鱼身体各部分进行节律运动或非节律运动,从而实现仿生机器鱼机动、灵活的自主游动;所述中枢模式发生器接收反馈信号时,针对中枢模式发生器内部和中枢模式发生器输出的速度反馈信息分别采用中枢模式发生器反馈控制模型为:<maths num="0001"><![CDATA[<math><mrow><mfenced open='{' close=''><mtable><mtr><mtd><msub><mover><mi>x</mi><mo>·</mo></mover><mi>i</mi></msub><mo>=</mo><mo>-</mo><msub><mi>ω</mi><mi>i</mi></msub><msub><mi>y</mi><mi>i</mi></msub><mo>-</mo><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>m</mi><mi>i</mi></msub><mo>-</mo><msubsup><mi>x</mi><mi>i</mi><mn>2</mn></msubsup><mo>-</mo><msubsup><mi>y</mi><mi>i</mi><mn>2</mn></msubsup><mo>)</mo></mrow><mo>+</mo><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow><mi>n</mi></munderover><msub><mi>a</mi><mi>j</mi></msub><msub><mi>y</mi><mi>j</mi></msub><mo>+</mo><msub><mi>s</mi><mi>i</mi></msub></mtd></mtr><mtr><mtd><msub><mover><mi>y</mi><mo>·</mo></mover><mi>i</mi></msub><mo>=</mo><msub><mi>ω</mi><mi>i</mi></msub><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><msub><mi>y</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>m</mi><mi>i</mi></msub><mo>-</mo><msubsup><mi>x</mi><mi>i</mi><mn>2</mn></msubsup><mo>-</mo><msubsup><mi>y</mi><mi>i</mi><mn>2</mn></msubsup><mo>)</mo></mrow><mo>+</mo><munderover><mi>Σ</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>≠</mo><mi>i</mi></mrow><mi>n</mi></munderover><msub><mi>b</mi><mi>k</mi></msub><msub><mi>x</mi><mi>k</mi></msub><mo>-</mo><msub><mi>s</mi><mi>i</mi></msub></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(1-1)中i=1,…,n,n表示振荡器神经元的个数,此处n=2;其中i=1表示左胸鳍,i=2表示右胸鳍;x<sub>i</sub>、y<sub>i</sub>表示两个振荡器的两个状态变量;ω<sub>i</sub>表示振荡器的固有频率,<img file="FSB00000696466800012.GIF" wi="86" he="70" />表示振荡器的固有幅值;a<sub>j</sub>、b<sub>k</sub>表示振荡器间的耦合系数,s<sub>i</sub>为反馈信息;对于CPG输出部耦合反馈信息,采取式(1-2)所示方法:<maths num="0002"><![CDATA[<math><mrow><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>Δ</mi><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>·</mo><mi>Δt</mi></mtd><mtd><mi>t</mi><mo>∉</mo><mrow><mo>(</mo><msub><mi>t</mi><mn>1</mn></msub><mo>,</mo><msub><mi>t</mi><mn>2</mn></msub><mo>)</mo></mrow></mtd></mtr><mtr><mtd><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>Δ</mi><msub><mi>x</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>·</mo><mi>Δt</mi><mo>+</mo><msub><mi>λ</mi><mi>i</mi></msub><mo>·</mo><msub><mi>s</mi><mi>i</mi></msub></mtd><mtd><mi>t</mi><mo>∈</mo><mrow><mo>(</mo><msub><mi>t</mi><mn>1</mn></msub><mo>,</mo><msub><mi>t</mi><mn>2</mn></msub><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths>式(1-2)中Δt为计算步长,s<sub>i</sub>为反馈信号,λ<sub>i</sub>为反馈信号s<sub>i</sub>耦合到状态变量x<sub>i</sub>上的比例系数,x<sub>i</sub>(k)为状态变量x<sub>i</sub>在k·Δt时刻的值,Δx<sub>i</sub>(k)为状态变量x<sub>i</sub>的增量;t<sub>1</sub>和t<sub>2</sub>分别表示反馈信号的起始时刻和停止时刻。 |