24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1479  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

everfx

铜虫 (正式写手)

[交流] 请教下控制系统状态观测器误差方程仿真的问题已有2人参与

大家知道观测器误差系统其实跟状态空间方程没什么区别,只是把状态量改成了观测的误差量。我的问题是,大家都怎么来实现观测误差的仿真的,比如举2阶的系统为例,观测误差为e1跟e2。这样就会得到e1跟e2的微分方程,那么到底怎么在matlab上绘出出e1跟e2的曲线呢?
    我看的资料不多,一种是把e1的导数写出e1(k+1)-e1(k)[或者e(k)-e(k-1)]就是2种差分格式,这样就能以给定的步长h进行仿真了,从而得到e1跟e2的曲线输出。第二类方法,我看有使用ode45,这个是基于Runge-Kutta方法的,这个是变步长的,固定步长的有0de5。我有好几个问题现在都比较迷惑,请教高手指导。
    其一,作为简单的仿真,一般选择哪类方法呢,有什么选择的原则吗?
    其二,差分法中,一般是选择e1(k+1)-e1(k)还是e1(k)-e1(k-1)作为e1的微分呢?
    其三,以这样的系统d(e1)/dt=-e1,d(e2)/dt=e1-e2为例,如果采用第1种,那么方程的左边就是e1(k+1)-e1(k),那么方程的右边怎么写呢,对于第1个方程的右边就是e1(k),可是对于第2个方程右边是写做e1(k)-e2(k)还是e1(k+1)-e2(k),因为由第1个方程已经得到了e1(k+1),我不知道要不要把最新得到的e1(k+1)值带入到第2个微分方程中去?
    其四,我看一般的仿真中都有给出仿真步长的,是不是说他们用的是差分方法?还是他们真的用固定步长的ode5来仿真?
      其五,作为简单的控制仿真,还有除了上面2种以外还有别的方法吗?我所指的仿真基本就是各大sci级别控制期刊中大家采用的方法,以及国内博硕论文中的仿真。
    以上就是我现在比较困惑的问题,还请大方之家解答,不胜感谢!

[ Last edited by everfx on 2013-9-7 at 20:29 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ncszhenry

金虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
第一个,作为仿真,定步长和变步长都可以,一般使用ode45就可以了,线性和非线性系统都好用。如果你要使用差分方程的话,需要使用到积分步长,这时使用定步长ode4就比较好。
问题二和三是一个问题。右式的选择与左式相关。e1(k+1)-e1(k)=e1(k)*T,T为积分步长。e2(k+1)-e2(k)=e1(k)-e2(k)。不能把上步得到的e1(k+1)代入第二个方程,因为求e1(k+1)和e2(k+1)是在同一步进行了,如果你代入下一步的值,怎可能呢?
以上是我的见解,仅供参考
4楼2013-12-30 10:30:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

1314aly

铁虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
您好 我最近在做与观测器有关的问题 想请教一下 能留个QQ吗?
2楼2013-12-23 18:25:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

everfx

铜虫 (正式写手)

引用回帖:
2楼: Originally posted by 1314aly at 2013-12-23 18:25:02
您好 我最近在做与观测器有关的问题 想请教一下 能留个QQ吗?

最近忙,实在不好意思。
3楼2013-12-26 19:11:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

everfx

铜虫 (正式写手)

引用回帖:
4楼: Originally posted by ncszhenry at 2013-12-30 10:30:08
第一个,作为仿真,定步长和变步长都可以,一般使用ode45就可以了,线性和非线性系统都好用。如果你要使用差分方程的话,需要使用到积分步长,这时使用定步长ode4就比较好。
问题二和三是一个问题。右式的选择与左 ...

谢谢你的理解!
5楼2013-12-30 10:59:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复(可上传附件)
信息提示
请填处理意见