matlab仿真机械臂单个关节旋转,SimMechanics机械臂建模与仿真:利用Matlab的SimMechanics进行机械臂的模型搭建及动力学仿真(三)...

本文介绍了如何使用Matlab的SimMechanics进行机械臂单个关节的旋转仿真模拟。首先,通过添加关节模型使机械臂具备运动条件,然后详细讲解了关节属性设置,包括驱动轴方向、限位和驱动方式。接着,通过Simulink-PS Converter添加驱动源,并创建常量和变量信号控制关节转动。最后,讨论了逆运动学和轨迹规划的应用,以实现对机械臂更复杂的控制。
部署运行你感兴趣的模型镜像

三、机械臂的运动仿真模拟

1.在第一节中,我们已经搭建了机械臂的模型,但他目前只是一个刚体模型,不具备任何运动条件,现在我们需要在他的关节处添加关节模型。目前,我们只需要旋转关节和平动关节,如图所示:

0bdd988121a5b74aeda8667ac700daa8.png

将我们需要的关节插入到之前建立的关节模型中。

后期补充:下图有一个地方是错误的,第一个关节应该 在第一节连杆与第二节连杆之间,调整一下顺序即可。

e3a6b20f67b89c34e366c32b400bbc52.png

如上图所示,第一个关节所在的空间为世界坐标系原点空间,第二个关节所在空间为第二节连杆的末端所在空间,但三个关节是第三节连杆末端所在空间。

仔细观察上图,发现,最后一个关节后,还附加了一个关节,这是为什么呢?

是因为,当存在一个关节时,必须存在一个实体连杆使得关节可以驱动,如果没有,则关节的输出目标为空。

2.关节设置

双击某个关节,查看其属性设置:

ce03b1d67ceb76407031fec20a51a9fc.png

注意:Z Revolute Primitive,每个关节,他的驱动轴都是当前空间的Z轴,这也就是为什么之前在建立连杆模型的时候,要把连杆末端处的空间的Z轴转化为关节空间。

State Tragets:初始位置,我们默认设置为0就好。

Limits:限位,设置可转动/平移范围。

Actuation:驱动,分为力矩驱动和运动驱动(角度/距离驱动),这里,我们设置为:

9c5f9761e58ca42d2f0b111babb9c4c5.png

这样,可以通过直接输入指定角度,驱动该关节转动至该角度。

Sensing:传感,可以输出你想要查看的当前角度、距离、力矩等。我们暂不设置。

3.添加驱动源

我们需要驱动信号和信号转换。

69f5389b0acbbdbbafe542b0ff19c098.png

Simulink-PS Converter,将无单位Simulink输入信号转换为物理信号。举个例子,无单位信号u=1,在该模块将单位uint设置为cm时,经过转换,输出为1cm的物理信号,如果将该物理信号接入到移动关节,则移动关节移动1cm,如果该信号连续可变,例如u=t,则移动关节随着时间的变化,其轨迹为斜率为1的直线。

我们尝试制作一个单关节控制器,输入信号分别为常量信号和变量信号(随着时间的改变而改变),观察机械臂的运动状态:

常量信号需要用到constant模块。 将该模块的值设置为1.57(也就是角度制的90度),

将Simulink-PS Converte的uint设置为rad

78f9702e4ff76d48e2eaadc77c636d5f.png

51b84e66831929e247d84cd83c84c00d.png

1f2df2cd70a3b66e9ab2232b15a79ceb.png

点击运行,可以看到在开始瞬间,第二关节转动90度,如果常量设置为0,则该关节不论收到多大的力的干扰,都不会转动。

现在我们将输入信号转化为变量信号,利用signal Builder模块。

240bbedfbf6d7b2fd5a45526bb8ba1d9.png

Simulink-PS Converte模块的设置不需要改变,我们设置signal Builder的曲线轨迹,如图所示:

f1364bb6c80f27b701e5f86343c8fabf.png

该曲线代表该关节的运动轨迹,注意,纵坐标为弧度制,连接好模块运行:

后期补充:下图有一个地方是错误的,第一个关节应该 在第一节连杆与第二节连杆之间,调整一下顺序即可。

eb188e56c9a69223f8a25be248b9bd75.png

至此,一个单关节的控制就完成了,如果在每个关节处都加入如上的驱动,则可以完成对每个关节的控制,注意:平动关节,他的Simulink-PS Converte模块设置的单位为cm或者其他长度单位!

65405789d4c07e0efb2fdcdfe3d052dd.png

如果我们加入先前制作的逆运动学模块,设定一个坐标,即可以得到每个关节的角度,将该角度输出至关节,即可驱动关节转动至该点。如果再加入轨迹规划模块,则可以使机械臂平滑的转动至目标点。关于这部分的内容,可以查看:

SimMechanics机械臂建模与仿真:利用Matlab的SimMechanics进行机械臂的模型搭建及动力学仿真(四)

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值