第1步:定义双摆块的位移,速度和加速度GyD.F4y2Ba
下图显示了双摆的模型。双摆型由两个摆锤和两个刚性杆组成。GyD.F4y2Ba
通过定义状态变量来描述双重摆的运动:GyD.F4y2Ba
通过定义变量来描述双重摆的属性:GyD.F4y2Ba
第一杆的长度GyD.F4y2Ba
第二杆的长度GyD.F4y2Ba
第一个鲍勃的质量GyD.F4y2Ba
第二个鲍勃的质量GyD.F4y2Ba
引力常数GyD.F4y2Ba
为简单起见,忽略两个刚性杆的质量。使用使用指定所有变量GyD.F4y2BaSyms.GyD.F4y2Ba
。GyD.F4y2Ba
定义笛卡尔坐标中双摆的位移。GyD.F4y2Ba
通过将位移与时间相对于使用的时间来发现速度GyD.F4y2Ba差GyD.F4y2Ba
功能。GyD.F4y2Ba
通过区分速度来找到加速度。GyD.F4y2Ba
第2步:定义运动方程GyD.F4y2Ba
根据牛顿法律定义运动方程。GyD.F4y2Ba
首先,指定第一杆的张力GyD.F4y2Ba
以及第二杆的张力GyD.F4y2Ba
。GyD.F4y2Ba
接下来,构造在两个肿块上行动的力的自由体图。GyD.F4y2Ba
评估作用的力量GyD.F4y2Ba
。通过平衡水平和垂直力分量来定义第一鲍勃的运动方程。将这两个等式指定为符号方程GyD.F4y2Baeqx_1.GyD.F4y2Ba
和GyD.F4y2Baeqy_1GyD.F4y2Ba
。GyD.F4y2Ba
eqx_1 =GyD.F4y2Ba
eqy_1 =GyD.F4y2Ba
评估作用的力量GyD.F4y2Ba
。通过平衡水平和垂直力分量来定义第二凸管的运动方程。将这两个等式指定为符号方程GyD.F4y2Baeqx_2.GyD.F4y2Ba
和GyD.F4y2Baeqy_2.GyD.F4y2Ba
。GyD.F4y2Ba
eqx_2 =GyD.F4y2Ba
eqy_2 =GyD.F4y2Ba
第3步:评估力并减少系统方程GyD.F4y2Ba
四个运动方程描述了双摆的运动学。评估作用在杆上的力并将四个方程的组减少到两个方程。GyD.F4y2Ba
运动方程有四个未知数:GyD.F4y2Ba
那GyD.F4y2Ba
那GyD.F4y2Ba
, 和GyD.F4y2Ba
。评估两个未知数GyD.F4y2Ba
和GyD.F4y2Ba
从GyD.F4y2Baeqx_1.GyD.F4y2Ba
和GyD.F4y2Baeqy_1GyD.F4y2Ba
。采用GyD.F4y2Ba解决GyD.F4y2Ba
找到的功能GyD.F4y2Ba
和GyD.F4y2Ba
。GyD.F4y2Ba
替换解决方案金宝搏官方网站GyD.F4y2Ba
和GyD.F4y2Ba
进入GyD.F4y2Baeqx_2.GyD.F4y2Ba
和GyD.F4y2Baeqy_2.GyD.F4y2Ba
。GyD.F4y2Ba
两个减小的方程完全描述了摆动运动。GyD.F4y2Ba
第4步:解决系统方程GyD.F4y2Ba
解决系统方程来描述摆动运动。GyD.F4y2Ba
首先,定义群众的值GyD.F4y2Ba
,杆长度GyD.F4y2Ba
,和重力GyD.F4y2Ba
(SI单位)。将这些值替换为两个减少的方程。GyD.F4y2Ba
eqn_1 =GyD.F4y2Ba
eqn_2 =GyD.F4y2Ba
这两个方程是非线性二阶微分方程。要解决这些等式,请使用该等式将它们转换为一阶微分方程GyD.F4y2Baodetovectorfield.GyD.F4y2Ba
功能。GyD.F4y2Ba
矢量的元素GyD.F4y2BaV.GyD.F4y2Ba
表示等于元素的时间衍生的一阶微分方程GyD.F4y2BaS.GyD.F4y2Ba
。元素GyD.F4y2BaS.GyD.F4y2Ba
是状态变量GyD.F4y2Ba
那GyD.F4y2Ba
那GyD.F4y2Ba
, 和GyD.F4y2Ba
。状态变量描述了双摆的角位移和速度。GyD.F4y2Ba
S =GyD.F4y2Ba
接下来,将第一阶微分方程转换为带有手柄的MATLAB函数GyD.F4y2BamGyD.F4y2Ba
。GyD.F4y2Ba
定义状态变量的初始条件GyD.F4y2Ba[PI / 4 0 PI / 6 0]GyD.F4y2Ba
。使用GyD.F4y2BaODE45.GyD.F4y2Ba
用于解决状态变量的功能。解决方案金宝搏官方网站是间隔内的时间函数GyD.F4y2Ba[0 10]GyD.F4y2Ba
。GyD.F4y2Ba
绘制状态变量的解。金宝搏官方网站GyD.F4y2Ba
第5步:创建振荡双摆的动画GyD.F4y2Ba
创建振荡双摆的动画。GyD.F4y2Ba
首先,创建使用的四个功能GyD.F4y2Ba贬GyD.F4y2Ba
从解决方案评估两个摆锤的坐标金宝搏官方网站GyD.F4y2Ba皂GyD.F4y2Ba
。GyD.F4y2Ba
接下来,通过使用使用的第一摆动Bob的停止动作动画对象GyD.F4y2Ba煽动者GyD.F4y2Ba
功能。默认情况下,GyD.F4y2Ba煽动者GyD.F4y2Ba
创建一个动画对象,每单位时间为10个生成的帧范围内GyD.F4y2BaT.GyD.F4y2Ba
从0到10。通过使用该坐标绘制坐标GyD.F4y2Ba阴谋GyD.F4y2Ba
功能。设定GyD.F4y2BaXGyD.F4y2Ba-axis和GyD.F4y2BayGyD.F4y2Ba- 轴是相同的长度。GyD.F4y2Ba
接下来,添加第一刚性杆,第二摆锤鲍勃和第二刚性杆的动画对象。GyD.F4y2Ba
添加一块文本来计算经过的时间GyD.F4y2Ba文本GyD.F4y2Ba
功能。采用GyD.F4y2Banum2str.GyD.F4y2Ba
将时间参数转换为字符串。GyD.F4y2Ba
使用命令GyD.F4y2BaPlayanimation.GyD.F4y2Ba
播放双摆的动画。GyD.F4y2Ba