simulink的fcn怎么用_双摆系统的Simulink仿真(Fcn Block)

根据双摆系统的拉格朗日动力模型建立仿真。

计算拉格朗日方程:

当计算出拉格朗日量之后,需要求出L对phi1,phi2,dphi1,dphi2的偏导。

Matlab中,当所有参数为sym变量时,我们可以用jacobian这一命令实现:

L_phi1 = jacobian(L,phi1);

L_dphi1 = jacobian(L,dphi1);

L_phi2 = jacobian(L,phi2);

L_dphi2 = jacobian(L,dphi2);

2.求出偏导后,需要计算dL_ddphi1和dL_ddphi2对时间的导数,但是此时角度为sym变量,因此需将两式中的角度,角速度变量替换为与时间有关的变量:

可以使用subs来实现这一操作:

L_dphi1_t = subs(L_dphi1,{phi1,dphi1,phi2,dphi2}, ...

str2sym({'phi1(t)','dphi1(t)','phi2(t)','dphi2(t)'}));

L_dphi2_t = subs(L_dphi2,{phi1,dphi1,phi2,dphi2}, ...

str2sym({'phi1(t)','dphi1(t)','phi2(t)','dphi2(t)'}));

然后使用diff函数对时间求导:

dL_dphi1_t = diff(L_dphi1_t,t);

dL

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值