在SimMechanics中更改Revolute Joint Axis

时间:2016-03-24 18:34:32

标签: matlab simulation simulink simscape simmechanics

我正在利用SimMechanics,SimElectronics和Simulink为嵌入式系统类项目(files here)建模四轴飞行器系统。我已经生成了F450四轴飞行器框架的第二代SimMechanics模型,包括电机和螺旋桨。我们希望开发一种四轴飞行器模型,在x轴或y轴周围只有一个旋转自由度。我希望通过将四轴飞行器框架连接到"世界框架"的旋转接头来模拟这个。然而,"旋转关节" SimMechanics中的块仅作用于z轴。如何更改旋转关节的旋转轴?

似乎另一个人问了same question,但还没有人回答他的问题。

2 个答案:

答案 0 :(得分:1)

请参阅SimMechanics文档中的Assembling Multibody Models,特别是“定向关节”部分:

  

要获得模型中预期的运动,必须对齐其各种运动   关节运动轴正确。这意味着对齐关节本身   在实际系统中观察到或预期的。关节不对齐   轴可能会导致意外的运动,但它往往导致某些事情   更严重的,例如未能组装和模拟。

     

您可以通过旋转连接来指定和更改关节对齐   相邻的身体子系统的局部框架。为此,你   使用Rigid Transform块指定旋转变换   将新块添加到主体子系统,或者,如果适用,添加   改变旋转变换在现有的块内   子系统。

     

为什么要通过体子系统框架改变关节的方向?   Joint块中的基元每个都有一个预定的运动轴,   例如x或z。轴定义是固定的,不能更改。   重新连接相邻主体的本地连接框架   子系统提供了一种自然的方式来重新定向关节,同时避免   关于特定关节使用哪个轴的混淆。

     

有关如何旋转关节连接框架的示例,请参阅Model Mount

所以答案是使用Rigid Transform块来改变框架的方向,你不能改变旋转关节的轴。

答案 1 :(得分:0)

我认为您应该在CAD文件中更改它。更改螺旋桨轴以与z轴对齐。但是你应该只改变螺旋桨轴,而不是整个身体。