【联合仿真】电机与机械臂的联合simulink仿真

0 引言

  前言:有个把月没更新博客了,一是有点忙,二来也不是特别想写博客。上个月主要是在搭建永磁同步电机和机械臂联合仿真的模型,最后仿真效果还算良好,应该算完成了。

  思路:有两种思路,第一种思路是电机输出电磁转矩,此转矩作为机械臂的输入力矩,机械臂输出角度并与电机的转子角度成一个减速比的关系。第二种思路是电机输出角度指令,机械臂输出力矩,输出的力矩是电磁转矩,将该电磁转矩对应的负载力矩提供给电机。以上两种方案更为合理的是第一种方案,但由于第一种方案在仿真时效果没有第二种好,这里仅对第二种方案进行说明。

目录

    • 0 引言
    • 1 永磁同步电机的矢量控制模型
    • 2 机械臂的simscape模型
    • 3 电机与机械臂联合仿真模型
    • 4 仿真结果
    • 结论:

1 永磁同步电机的矢量控制模型

  永磁同步电机的矢量控制模型这里就不再赘述了,之前博客也提到过(电机的参数辨识中),这里先把电机的矢量控制模型搭好。
【联合仿真】电机与机械臂的联合simulink仿真_第1张图片

2 机械臂的simscape模型

   同理,机械臂的可视化simscape也说过怎么建立。使用Matlab/SimMechanics仿真机械臂按照着建立即可。
【联合仿真】电机与机械臂的联合simulink仿真_第2张图片

3 电机与机械臂联合仿真模型

   那么重点就是如何将这两个模型结合起来共同仿真,实现一个与实物类似的仿真,即电机驱动机械臂完成指定的轨迹。
   这里使用的是思路二,电机给角度指令输入给机械臂,机械臂输出力矩作为负载力矩给电机。
【联合仿真】电机与机械臂的联合simulink仿真_第3张图片
   将减速器视为一个减速比,这里减速比为105,电机的角度/减速比即为机械臂的角度指令,机械臂输出的为驱动力矩,驱动力矩/减速比即为电机的电磁转矩,同时考虑到电机的运动平衡方程: T e − T i    =    J n p d w d t T_e-T_i\,\,=\,\,\frac{J}{n_p}\frac{dw}{dt} TeTi=npJdtdw即可得负载力矩,将此负载力矩输给电机,就完成了整个系统的闭环结构。考虑到6个关节,即需要6个电机来分别驱动,最后整个系统框图为【联合仿真】电机与机械臂的联合simulink仿真_第4张图片
CRProbotjoint输出是机械臂末端走一条直线段时的六个关节曲线,乘以减速比输入给电机。

   :此模型较大,运行时间较长,当我把固定步长设为2e-6时,仿真10s需要30分钟,即使是在服务器上仿真也需要20分钟,为了降低时长,我将固定步长设为2e-5,只需要5分钟左右即可完成,求解器设为ode4。

4 仿真结果

机械臂的末端轨迹曲线:
【联合仿真】电机与机械臂的联合simulink仿真_第5张图片

六个电机角度跟踪曲线:
【联合仿真】电机与机械臂的联合simulink仿真_第6张图片

结论:

   可以看出在刚开始的启动阶段由于电机未能很好的跟踪上参考角度导致机械臂末端轨迹出现抖动。比较符合实际情况。遗憾的是当我试图按照思路一来搭建模型时,无法做到机械臂角度与电机角度成减速比关系,未能做成电机将电磁转矩给机械臂让机械臂来运动。

你可能感兴趣的:(同步电机,机械臂,自动驾驶,matlab,单片机)