前言

本文建立一偏心水平连杆机构,在连杆上定义一个旋转副和一个单分量力矩,旋转副不在连杆的质心处,在重力作用下,连杆将偏离水平位置。以连杆受到的重力作为干扰,通过PID环节进行负反馈控制,控制的对象是作用在连杆上的力矩,使连杆按照固定的速度旋转


提示:以下是本篇文章正文内容,下面案例可供参考

一、构建偏心连杆模型

如下图所示,构建偏心连杆机构的模型,连杆与大地之间存在旋转副,旋转轴线位于连杆的几何中心,连杆末端有一球体,重力竖直向下,为-Y轴方向。
在这里插入图片描述

在重力作用下,连杆将绕转动副轴心作摆动,测量转动速度,转动副的速度呈正弦运动。

在这里插入图片描述

二、创建设计变量

点击下图按钮,创建设计变量
在这里插入图片描述

下面创建4个设计变量:
DV_target_velocity:用于参数化连杆的转速
DV_P、DV_I、DV_D: PID控制环节的比例、积分、微分系数
具体参数设置如下

的的大声道撒在这里插入图片描述

三、建立控制系统输入环节

PID控制需要输入控制目标与实际目标的偏差及偏差的微分值,由于我们要控制连杆的旋转速度,因此我们需要知道连杆的角速度偏差和角加速度偏差(微分)、角度偏差(积分),角度偏差可以通过角速度偏差积分得到。

点击控制工具包,创建输入设计变量,命名为input_velocity,定义其函数为目标角速度与测量角速度的偏差,表达式如下

DV_target_velocity-WZ(PART_2.MARKER_3, ground.MARKER_4)*RTOD

在这里插入图片描述
同样方法建立输入设计变量 input_acce,为目标角加速度与测量角加速度的偏差,表达式为

0-WDTZ(PART_2.MARKER_3, ground.MARKER_4)

这里用到了两个函数,WZ和WDTZ,不懂的小伙伴可自行百度

四、创建PID环节

如下图所示,点击创建工具包后,再点击PID按钮,创建PID环节,命名为 pid_link,输入为input_velocity,导函数输入为 input_acce,并将DV_P、DV_I、DV_D分别填入对应的P I D三个增益参数,初始条件设置为0.
在这里插入图片描述

对作用在连杆上的力矩进行参数化,在力矩编辑对话框中,在函数一栏直接输入pid_link.即将PID计算出的力矩作用于连杆上。
在这里插入图片描述

五、测试

设置仿真时间为50S,仿真步数为1000步
测量得到的驱动力的力矩变化如下
在这里插入图片描述

测量得到的连杆转速变化如下,可见连杆转速很快稳定到了50度/秒(由于重力的干扰,存在一定偏差,可改变PID参数值进行改善)
在这里插入图片描述
可以建立测量函数,对连杆目标转速和实际转速的差值进行测量,操作如下图
在这里插入图片描述

即得到目标转速与实际测量转速的差值
在这里插入图片描述

总结

以上就是本文全部内容,如有疑问,欢迎大家评论区交流~

本文用到的仿真源文件下载地址:https://download.csdn.net/download/yuyu_94/86334471