关于反馈线性化李导数运算的个人理解及MATLAB仿真程序源代码

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

[李导数是反馈线性化控制方法中使用到的一种数学工具。本文以一种浅显易懂的方式讲述了李导数的定义、示例以及所对应的MATLAB计算源程序。以基于等效线性扭簧的串联弹性驱动器的系统动力学模型为例,通过状态变换,将非线性系统变换为线性系统,在该变换过程中,给出了李导数计算的MATLAB源程序]反馈线性化基础知识-李导数计算以及MATLAB源程序Shanda2010(百度文库)原创反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码1反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码作者:shanda2010(百度文库)时间:2019-07-08内容简介:本文详细讲述了反馈线性化控制方法中使用到的李导数的定义以及计算,并给出了多个计算示例和MATLAB计算源程序。在第三节中,针对基于等效线性扭簧的串联弹性驱动器的非线性系统动力学模型,通过状态变换,将其变换为一个等效的线性系统。在该变换过程中,使用到了李导数。本文给出了详细的MATLAB计算源程序,展示了李导数在反馈线性化控制方法中的重要的作用。关键词:反馈线性化、李导数、MATLAB源代码经过验证的基于M函数的MATLAB仿真程序源代码反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码1目录第一节梯度和雅克比矩阵的定义和示例...............................1第二节李导数的定义、示例及MATLAB源程序................6第三节李导数在反馈线性化中的应用示例以及MATLAB源程序........................................................................................12总结............................................................................................20反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码1第一节梯度和雅克比矩阵的定义和示例李导数是在运用反馈线性化方法过程中需要使用到的一种数学工具,是反馈线性化的基础知识。反馈线性化是用于运动跟踪控制的一种常用的方法,该方法的核心思想就是将一个非线性系统代数的变换为一个(完全的或者部分的)线性系统。反馈线性化方法并不是通过逼近来将非线性系统变换为一个线性系统,而是通过状态变换和反馈来实现的,即通过状态变换和反馈来将相对复杂的非线性系统变换为相对简单的线性化系统,进而可以利用现代控制理论进行控制。反馈线性化方法使用到了微分几何理论,并需要使用李导数这一数学工具。那接下来,介绍一下李导数的定义。在介绍李导数的定义之前,先对接下来的描述中所用到的符号进行解释说明:为了描述李导数这一数学工具,给出以下函数的定义::nnfRR是nR空间的一个光滑向量场,即一个向量函数f对应于n维空间中的一个向量场。需要注意的是,这里指的光滑向量场是指fx具有任意阶的连续偏导数。下面给出这样的一个n维光滑向量场nfxR的示例(nfxR表示向量场fx是n维的),如式(1-1)所示。在式1-1中,n=4,,,,,,qsgmmDKEMDJ均为已知的常量。关于四维光滑向量场4fxR的举例,如示例1所示,该4fxR具有任意阶的连反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码2续偏导数。%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%示例1-112fxx,22131()sin()qgsDEKfxxxxxMMM,....2121312434431()()sin()()()()()()qgsnmsmmxfxDEKxxxxfxMMMfxRxfxDKfxxxxJJ(1-1)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%考查状态变量nxR(即12nnxxxxR)的一个光滑标量函数hx,这里的光滑标量函数1hxR的意思是:当状态变量12nnxxxxR的每个分量都确定后,1hxR的值也将是确定的,并且是一个常数值。记光滑标量函数1hxR的梯度为hx,如式(1-2)所示。123nhxhxhxhxhxhxxxxxx(1-2)这里需要注意的是:梯度是一个行向量,且第j个元素为jjhxhx。%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%示例1-2:反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码3以光滑标量函数1hxx为例,其中状态变量1234Txxxxx为四维状态变量。求1hxx的梯度。12341000hxhxhxhxhxhxxxxxx%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%类似的,考查一个向量场nfxR,记nfxR的雅克比矩阵为fx,即如式(1-3)所示。111112322221233333123123nnnnnnnnnnfxfxfxfxxxxxfxfxfxfxxxxxfxfxRfxfxfxfxxxxxxfxfxfxfxxxxx(1-3)很显然,这是一个nn的矩阵,并且有:iijjfxfx。%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%示例1-3:21213124434314()()sin()()()()()()xfxxxxxfxfxRxfxxxxfx;12434xxxRxx求4fxR的雅克比矩阵。首先,明确这里有:4fxR为四维光滑向量场,如式(1-4)反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码4所示,状态变量为1234Txxxxx。1222131344431()sin()()()()fxxfxxxxxfxxfxxxx(1-4)关于4fxR的雅克比矩阵的相关计算如下所示:111213140100fxxfxxfxxfxx(1-5)2112223241cos110fxxxfxxfxxfxx(1-6)反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码5313233340001fxxfxxfxxfxx(1-7)414243441011fxxfxxfxxfxx(1-8)则关于4fxR的雅克比矩阵如式(1-9)所示。11111234222212343333123444441234101001cos11000011011fxfxfxfxxxxxfxfxfxfxxxxxfxfxxfxfxfxfxxxxxfxfxfxfxxxxxx44R(1-9)反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码6第二节李导数的定义、示例及MATLAB源程序考查一个光滑标量函数123,,,,nhxhxxxx和一个光滑向量场函数11221212,,,,,,,,,nnnnnfxxxfxxxfxRfxxx,定义一个新的标量函数,记作fLhx,称之为123,,,,nhxhxxxx关于nfxR的李导数。即有如下关于李导数的定义描述:123,,,,nhxhxxxx:nRR是一个光滑的标量函数;11221212,,,,,,,,,nnnnfxxxfxxxfxfxxx:nnRR是nR上的一个光滑向量场;则123,,,,nhxhxxxx关于nfxR的李导数(Liederivative)是一个定义为fLhxhxfx的标量函数,即李导数fLhxhxfx是123,,,,nhxhxxxx沿向量nfxR方向的方向导数。关于李导数fLhxhxfx的更详细的表达如下式(2-1)所示。其中,12nhxhxhxhxxxx。反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码7112212121212121,,,,,,,,,fnnnnnnnniiiLhxhxfxhxfxxfxxxfxxxhxhxhxxxxfxxxhxhxhxfxfxfxxxxhxfxx(2-1)由于李导数(Liederivative)fLhxhxfx是一个光滑标量函数,所以,可以再次沿着向量场nfxR求李导数,以此类推,可以求出2阶李导数,即详细的描述如式(2-2)所示。211221212121,,,,,,,,,ffffnfffnnnnnfiiiLLhxLhxLhxfxxfxxxLhxLhxLhxfxxxxxxfxxxLhxfxx(2-2)更一般的关于k阶李导数的计算表达如式(2-3)所示。反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码802321ffffffkfkfLhxhxLhxhxfxLhxLhxfxLhxLhxfxLhxLhxfxx(2-3)扩展李导数的计算,定义gx是另一个光滑向量场,则李导数(Liederivative)fLhxhxfx沿向量场gx的李导数如式(2-4)所示:gffLLhxLhxgx(2-4)第k阶李导数kfLhx沿着向量场gx的李导数如式(2-5)所示:12121212kgfkfkfkkkfffnnkkkfffnnLLhxLhxgxLhxgxxgxLhxLhxLhxgxxxxgxLhxLhxLhxgxgxgxxxx(2-5)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%示例2-1反馈线性化基础知识—李导数计算及MATLAB仿真程序源代码9假设存在光滑向量场3fxR,光滑向量场3gxR,标量函数hx,如下所示,求0fLhx,fLhx,2fLhx,3fLhx,0gfLLhx,gfL

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功