VC++铰链四杆机构运动仿真编程示例-对话框.doc

VC++铰链四杆机构运动仿真编程示例-对话框.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VC铰链四杆机构运动仿真编程示例-对话框

VC++铰链四杆机构运动仿真编程示例 (基于对话框风格的程序实现) 一. 铰链四杆机构的运动分析原理 如图所示铰链四杆机构。已知各杆长,原动件的位置角其角速度为常数,且以逆时针方向为正。求解程序:首先建立机构的位置方程式,求出给定时的构件2、3的位置角。将位置方程分别对时间t求导一次、二次,得速度方程式和加速度方程式,并求得各构件的角速度和角加速度。1.位移分析 为建立机构的位置方程式,首先画出各构件的矢量指向(如图所示)。以x轴正向沿逆时针方向画出各杆的转角及,由矢量封闭回路ABCD写出矢量方程 将上述矢量方程写成坐标方程 (3-1) 上述方程的待求量为。由于该方程为的非线性方程,为方便起见,在图中加辅助矢量,即。在封闭矢量回路ABD中 及 (3-2) 解得: (3-3) 在封闭矢量回路BCD中 及 解得 (3-4) 注意:按正切函数求其角度时,应根据函数中分子分母的正负号判断所在象限后决定。而按余弦函数求其角度时,如上式中由的值求时,由于=,故有两个解。当用时为图3-3中所示的解,即C点在BD线之上;当用时为另一解,即C点位于BD线之下(图中未示出)。2.速度分析 将式(3-1)对t求导,注意到,得 (3-5) 为求解方便起见,采用坐标旋转方法。例如求时,可将式(3-5)中第一式的项消去,即将坐标系假想按逆时针方向旋转,此时该公式中各转角应加上(-),即可消去。按此法求得、的公式 (3-6) 3.加速度分析 将式(3-5)对时间t求导,并注意到,得 (3-7) 同样采用坐标旋转法,可求得、 (3-8) 二. 编程步骤 1. 在项目类型中选择MFC AppWizard(exe),项目名取为“FourBar”,在location中指定一个工作路径用于放置程序文件。 2. 在程序向导的第1步选择建立一个基于对话框的应用程序,点击“Finish”结束向导。 3. 在对话框窗口布局控件。首先选中已有的静态文本“TODO:在这里设置对话框控件”,delete将其删除。从右侧控件工具栏中点击“Picture”图片控件,在对话框空白区域拖出一个矩形窗口,右键点击控件边框,弹出属性对话框,设定其Type属性为Rectangle,color为white,其余不变。再点击Group Box(成组框)控件,在对话框空白区域拖出一个矩形窗口,将其caption改为“输入四杆机构参数”,并在其中布置四个静态文本控件和四个编辑框控件,分别对应输入四杆机构的四个杆长尺寸。 为各个编辑框控件指定控件的ID号: AB杆:IDC_AB; BC杆:IDC_BC; CD杆:IDC_CD; AD杆:IDC_AD。 4. 在成组框的下方添加2个按钮,其caption分别为“开始运动”和“停止运动”,其ID分别为IDC_START和IDC_STOP。将已有的“确定”按钮拖至下方,caption改为“退出”,并删除原有的“取消”按钮。这样对话框界面就设计好了。后续可以根据需要添加其他功能按钮等。 5. 为对话框中的控件添加相应的成员变量:点击菜单“View →ClassWizard” ,点击“Member Variables”标签项,为对话框中的控件添加对应的成员变量如下图所示。 6. 四杆机构参数包括:各杆长尺寸ab,bc,cd,ad,曲柄位置角φ1、连杆位置角φ2、摇杆位置角φ3、机架倾角θ4。在CFourBarDlg类中添加成员变量angle1,angle2,angle3,sita4,分别对应为AB、BC、CD、AD四杆的位置角,类型均设置为double。 7. 初始化四杆机构的参数:在CFourBarDlg类的OnInitDialog()函数中添加初始化代码: // TODO: Add extra initialization here m_ab=100; m_bc=250; m_cd=200; m_ad=200; sita4=0; angle1=45; angle2=0; angle3=0; UpdateData(FALSE); //将初始设定的杆长尺寸填入编辑框中显示 8. 在CFourBarDlg类中添加成员函数DrawFourbar(),类型为void。将来在这个函数中实现四杆机构的参数计算及绘图。 9. 在FourBarDlg.cpp前面加上科学计算的头文件,这样就可以支持三角函数的计算。 #include stdafx.h #include FourBar.h #include Fo

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档