




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
此文档收集于网络,如有侵权,请联系网站删除机械原理大作业 课程名称:机械原理设计题目:连杆机构运动分析院系:能源学院班级: 设计者:学号:指导教师:设计时间: 5,源代码RR I级机构运动分析的源代码Public Class RR 定义输入字段 Public rxA As Single Public ryA As Single Public vxA As Single Public vyA As Single Public axA As SinglePublic ayA As Single Public phii As Single Public omegai As Single Public alphai As SinglePublic li As Single 定义输出参数 Private sgl_rxB As Single Private sgl_ryB As Single Private sgl_vxB As Single Private sgl_vyB As Single Private sgl_axB As Single Private sgl_ayB As Single 实例化类并初始化输入字段 Public Sub New(ByVal radiusVector_xA As Single, ByVal radiusVector_yA As Single, ByVal velocity_xA As Single, ByVal velocity_yA As Single, ByVal acceleration_xA As Single, ByVal acceleration_yA As Single, ByVal phi_i As Single, ByVal omega_i As Single, ByVal alpha_i As Single, ByVal length_i As Single) rxA = radiusVector_xA ryA = radiusVector_yA vxA = velocity_xA vyA = velocity_yA axA = acceleration_xA ayA = acceleration_yA phii = phi_i omegai = omega_i alphai = alpha_i li = length_i End Sub 定义输出属性 Public ReadOnly Property rxB As Single Get Return sgl_rxB End Get End Property Public ReadOnly Property ryB As Single Get Return sgl_ryB End Get End Property Public ReadOnly Property vxB As Single Get Return sgl_vxB End Get End Property Public ReadOnly Property vyB As Single Get Return sgl_vyB End Get End Property Public ReadOnly Property axB As Single Get Return sgl_axB End Get End Property Public ReadOnly Property ayB As Single Get Return sgl_ayB End Get End Property 计算输出参数 Public Sub Calculate() sgl_rxB = rxA + li * Math.Cos(phii) sgl_ryB = ryA + li * Math.Sin(phii) sgl_vxB = vxA - omegai * li * Math.Sin(phii) sgl_vyB = vyA + omegai * li * Math.Cos(phii) sgl_axB = axA - omegai * omegai * li * Math.Cos(phii) - alphai * li *_ Math.Sin(phii) sgl_ayB = ayA - omegai * omegai * li * Math.Sin(phii) + alphai * li *_ Math.Cos(phii) End SubEnd ClassRPR II级基本组运动分析的源代码Public Class RPR 定义杆组模式枚举类型 Public Enum Mode As Integer ClockWise = 1 AntiClockWise = -1 End Enum 定义输入字段 Public rxB As Single Public ryB As Single Public vxB As Single Public vyB As Single Public axB As Single Public ayB As Single Public rxD As Single Public ryD As Single Public vxD As Single Public vyD As Single Public axD As Single Public ayD As Single Public li As Single Public lj As Single Public lk As Single Public M As Mode 定义输出参数 Private sgl_rxC As Single Private sgl_ryC As Single Private sgl_vxC As Single Private sgl_vyC As Single Private sgl_axC As Single Private sgl_ayC As Single Private sgl_rxE As Single Private sgl_ryE As Single Private sgl_vxE As Single Private sgl_vyE As Single Private sgl_axE As Single Private sgl_ayE As Single Private sgl_phij As Double Private sgl_omegaj As Double Private sgl_alphaj As Double 实例化类并初始化输入字段 Public Sub New(ByVal radiusVector_xB As Single, ByVal radiusVector_yB As Single, ByVal velocity_xB As Single, ByVal velocity_yB As Single,ByVal acceleration_xB As Single, ByVal acceleration_yB As Single, ByVal radiusVector_xD As Single, ByVal radiusVector_yD As Single,ByVal velocity_xD As Single, ByVal velocity_yD As Single, ByVal acceleration_xD As Single, ByVal acceleration_yD As Single,ByVal length_i As Single, ByVal length_j As Single, ByVal length_k As Single, ByVal mode As Mode) rxB = radiusVector_xB ryB = radiusVector_yB vxB = velocity_xB vyB = velocity_yB axB = acceleration_xB ayB = acceleration_yB rxD = radiusVector_xD ryD = radiusVector_yD vxD = velocity_xD vyD = velocity_yD axD = acceleration_xD ayD = acceleration_yD li = length_i lj = length_j lk = length_k M = mode End Sub 定义输出属性 Public ReadOnly Property rxC As Single Get Return sgl_rxC End Get End Property Public ReadOnly Property ryC As Single Get Return sgl_ryC End Get End Property Public ReadOnly Property vxC As Single Get Return sgl_vxC End Get End Property Public ReadOnly Property vyC As Single Get Return sgl_vyC End Get End Property Public ReadOnly Property axC As Single Get Return sgl_axC End Get End Property Public ReadOnly Property ayC As Single Get Return sgl_ayC End Get End Property Public ReadOnly Property rxE As Single Get Return sgl_rxE End Get End Property Public ReadOnly Property ryE As Single Get Return sgl_ryE End Get End Property Public ReadOnly Property vxE As Single Get Return sgl_vxE End Get End Property Public ReadOnly Property vyE As Single Get Return sgl_vyE End Get End Property Public ReadOnly Property axE As Single Get Return sgl_axE End Get End Property Public ReadOnly Property ayE As Single Get Return sgl_ayE End Get End Property Public ReadOnly Property phij As Single Get Return sgl_phij End Get End Property Public ReadOnly Property omegaj As Single Get Return sgl_omegaj End Get End Property Public ReadOnly Property alphaj As Single Get Return sgl_alphaj End Get End Property 计算输出参数 Public Sub Calculate() Dim phii As Double Dim phik As Double Dim s As Double Dim v As Double Dim a As Double 计算phij Dim kDB As Double Dim phiDB As Double Dim phi As Double If rxB rxD Then kDB = (ryB - ryD) / (rxB - rxD) If rxB rxD Then phiDB = Math.Atan(kDB) Else phiDB = Math.Atan(kDB) + Math.PI End If Else If ryB ryD Then phiDB = Math.PI / 2 Else phiDB = 3 * Math.PI / 2 End If End If phi = Math.Asin(li + lk) / Math.Sqrt(rxB - rxD) * (rxB - rxD) + (ryB - ryD)*_ (ryB - ryD) sgl_phij = phiDB + M * phi If sgl_phij 2 * Math.PI Then phiCD(i) -= 2 * Math.PI omegaCD(i) = BBC.omegaj alphaCD(i) = BBC.alphaj 计算D点的运动状态 CD = New RR(-110, 0, 0, 0, 0, 0, phiCD(i), omegaCD(i), alphaCD(i), lCD) CD.Calculate() rD(i).X = CD.rxB rD(i).Y = CD.ryB vxD(i) = CD.vxB vyD(i) = CD.vyB axD(i) = CD.axB ayD(i) = CD.ayB 计算EF杆的运动状态 DDE = New RPR(rD(i).X, rD(i).Y, vxD(i), vyD(i), axD(i), ayD(i),-110, -320, 0, 0, 0, 0, 0, lEF, 0, 1) DDE.Calculate() phiEF(i) = DDE.phij omegaEF(i) = DDE.omegaj alphaEF(i) = DDE.alphaj 计算F点的运动状态 EF = New RR(-110, -320, 0, 0, 0, 0, phiEF(i), omegaEF(i), alphaEF(i), lEF) EF.Calculate() rF(i).X = EF.rxB rF(i).Y = EF.ryB vxF(i) = EF.vxB vyF(i) = EF.vyB axF(i) = EF.axB ayF(i) = EF.ayB 计算G点的运动状态 FGG = New RRP(rF(i).X, rF(i).Y, vxF(i), vyF(i), axF(i), ayF(i),0, 380, 0, 0, 0, 0, 0, 0, 0, 500, 0, 1) FGG.Calculate() rxG(i) = FGG.rxC vxG(i) = FGG.vxC axG(i) = FGG.axC Next End Sub Private Sub btnAnimation_Click(sender As Object, e As EventArgs) Handles_ btnAnimation.Click
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度防水材料节能技术改造项目合同
- 二零二五年度光伏发电项目承揽合同模板
- 2025版文化创意园区设计委托合同模板
- 二零二五版房地产土地使用权开发项目管理合同
- 二零二五年度地下管网改造承包合同
- 二零二五年酒店客房安全与客户权益保护合同
- 二零二五年度农业园区场地租赁合同模板
- 福建省福州市长乐区长乐高级中学2026届高二化学第一学期期中考试试题含解析
- 江苏省东台市第一中学2026届化学高一上期中联考试题含解析
- 移动口碑营销创新创业项目商业计划书
- 中国甲状腺相关眼病诊断和治疗指南2022年解读
- 石油储量与产量预测模型研究
- 《学习国旗法》课件
- 中智人力测评题库答案
- 安全保密审计报告
- 《忆秦娥~ 娄山关》
- 医疗设备采购 投标技术方案 (技术方案)
- 小批量试产报告1
- 《项目管理飞行检查管理办法》宣贯交底
- 干熄焦余热发电安全预评价送审
- 脑卒中康复治疗流程图
评论
0/150
提交评论