打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
指定SimMechanics模型的运动

 

TheProblem

 

假设我们有这个模型,这个模型是模拟一个巨大的吊机,你知道,就是吊着一个巨大的铁球,专门拆建筑物的那家伙。

(译者:

Ground代表地面,作为参考系。
Base表示蓝色的那个基底;Arm就表示红色的起重臂;Cable表示黑色的吊带。这三个模块都是Mass模块,表示物理结构的。
Prismatic滑动模块,它表示基底可以在地面上沿一个方向滑动,也就是我们从截图上看到的X轴;Revolute1表示这个起重臂可以绕着基座转动;Revolute2表示那个黑色的吊带跟红色起重臂也是转动关系;Weld模块连接着吊带CableMass,表示他们之间没有相对运动。这三个模块都属于Joint
,连接副类型的模块。

BasMotion Actuator模块,表示是驱动这个运动副的接口,驱动信号来源于它输入的Simulink信号。MotionActuator也是一样。)

 

对基座施加一个sine曲线的运动轨迹,按理说,末端的黑色球是会晃动的。

可是,它没有!

 

TheExplanation

 

可能你已经注意到了,基座是用一个 JointActuator来驱动的,而且设置为运动驱动。如果使用这种配置,三个参数都必须指定。

显然,对应于Sine曲线的位置输入,速度和加速度都是0

 

The Solution: FirstTry

 

想要SimMechanics给你一个合理的输出,那你必然要先给它一个合理的输入。

所以,可能你脑子里一下子就想起来Derivative微分模块。

如果位置信号是圆滑的话,这样做没有问题,但是,很多时候都会有各种问题。

为什么呢?

如果你的位置信号发生了不连续,那必然会引起速度信号的一个突变,导致加速度甚至到无穷大。无穷大的加速度是不现实的,会导致求解器的差分错误。

 

A BetterSolution

 

所以我推荐使用 TransferFunction模块来做一个滤波差分器。

现在,我们再来看一下吊机模型:

 

Now it's yourturn

If you are interested, you can find the modelhere.

Look at the documentation section titledStabilizing Numerical Derivatives inActuation Signals for more details and let us know whatyou think by leaving a comment here.

By Guy Rouleau



转自:http://blog.sina.com.cn/s/blog_b2f5027f0101e7u1.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于Matlab/SimMechanics的汽车风窗刮水器建模与仿真
专家答疑︱清洁传感器和电缆
【综述】船舶在波浪上纵向运动与控制研究
AI711-H11使用手册
高中物理考试95分以上的83种巧解秘密!
最新高中物理必修二模块检测卷2:自测一下,及时查缺补漏
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服