机械原理大作业平面连杆机构
机械原理课件-平面连杆机构

双滑块机构
(二)、取不同构件为机架
1、导杆机构 (1)、演化过程 曲柄滑块机构中,当将曲柄改为机架时,就演化成导杆机构。
(2)、类型
转动导杆机构 L1<L2
L1 :机架长度
摆动导杆机构 L1>L2
L2 :曲柄长度
(2)、应用
简易刨床
牛头刨床机构
2、摇块机构 (1)、演化过程 曲柄滑块机构中,当将连杆改为机架时,就演化成摇块机构。
第二章 平面连杆机构
连杆传动是利用常用的低副传动机构进行的传动,连杆传动能方 便的实现转动、摆动、移动等运动形式的转换。其中以由四个构件 组成的四杆机构应用最广泛,而且是组成多杆机构的基础。因此本 章着重讨论四杆机构的基本类型、性质及常用设计方法。
一、概念
§2-1 概述
1连杆机构:构件全部用低副联接而成的平面机构(低副机构)
1、按给定的行程速比系数K设计四杆机构
例: 偏置曲柄滑块机构,s=30mm,e=12mm,K=1.5,设计此机构。
2、按给定的连杆位置设计四杆机构
特点:两连架杆都是曲柄(整周转) 主动曲柄匀速转,从动曲柄变速转
正平行双曲柄机构:对边平行且相等 特点:主、从动曲柄匀速且相等
运动不确定现象:
反平行双曲柄机构:对边平行但不相等 公共汽车车门启闭机构
(三)、双摇杆机构 特点:两连架杆都是摇杆(摆动)
飞机起落架(实景)
二、铰链四杆机构的演化
2、应用:
机械式转向系
机车车轮的联动机构
机车车轮联动机构
§2-2 铰链四杆机构的类型与应用基本型式及其演化 据有无移动副存在:铰链四杆机构,滑块四杆机构
一、铰链四杆机构的基本型式
(一)、曲柄摇杆机构 特点:两连架杆一个是曲柄(整周转);一个是摇杆(摆动)
机械原理课件第8章平面连杆机构及其设计

本章介绍了平面连杆机构的基本概念、分类、运动分析方法和设计原则,以 及通过设计实例来展示平面连杆机构的应用。让我们一起探索这个有趣而重 要的机械原理领域吧!
平面连杆机构简介
平面连杆机构是机械工程中常见的一类机构,由连杆和铰链连接而成。它们的运动以及如何将动力传递 至其他部件都是设计时需要考虑的重要因素。
以汽车发动机中的连杆机构设计为例,通过优化连杆长度和转动角度,提高 功率输出和燃油效率。
平面连杆机构的设计步骤
1
需求分析
明确机构的工作要求,包括运动形式、
构想设计
2
速度要求等。
根据需求,初步构想机构的组成和结
构形式,并进行快速仿真验证。
3
细化设计
对构想设计进行细化,确定材料、尺
制造和调试
4
寸和制造工艺等。
按照设计图纸制造机构,并进行装配 和调试,确保运动性能符合要求。
平面连杆机构设计实例
平面连杆机构的基本组成
连杆
连杆是平面连杆机构中最基本的元件,常见的包括曲柄、摇杆和滑块。
铰链
铰链是连接连杆的关节,它们允许连杆相对运动,并使机构能够完成所需的动作。
驱动力
驱动力(如电机或手动操作)通过连杆传递运动,实现机构的工作。
平面连杆机构的分类
曲柄摇杆机构
曲柄摇杆机构由一个曲柄和一 个摇杆组成,广泛用于活塞式 发动机和机械手臂等应用中。
双摇杆机构
双摇杆机构由两个摇杆组成, 常用于切割机、绞盘等需要定 向力的设备。
滑块曲柄机构
滑块曲柄机构包括一个滑块和 一个曲柄,常见于发动机的曲 轴机构。
平面连杆机构的运动分析方法
1 刚体分析法
机械原理 平面连杆机构及设计

机械原理平面连杆机构及设计平面连杆机构是机械原理中最经典也是最重要的一种机构类型之一。
这种机构由多个刚性杆件组成,每个杆件都能在平面内移动,它们通过连接点(铰链/球头)相互连接。
平面连杆机构在机械工程领域中有着广泛的应用,能够实现很多不同的机械运动和工作原理。
平面连杆机构中最重要的构件是连杆,也就是连接各个零件的关键杆件,如果连杆设计不合适可能导致机构性能的下降。
因此,平面连杆机构的设计要受到重视,需要考虑以下几个因素。
一、长度比例连杆不同长度比例的设置,对整个机构的运动特性和反应速度有着很大的影响。
在设计平面连杆机构时,需要根据机构所要完成的任务,选择恰当的连杆长度比例,保证机构的平衡性和可靠性,以及使机构的工作效率更高。
二、铰链/球头的位置铰链/球头是平面连杆机构中的关键组成部分。
在设计平面连杆机构时,需要合理选择铰链/球头的位置,以达到机构所要完成的特定任务。
如果铰链/球头设置不当,或者位置过分集中,会使机构不平衡或失效。
因此,设计者需要考虑连杆的长度、位置、形状和角度等因素。
三、材质选择平面连杆机构的设计材料非常重要,它将直接影响到机构的质量和强度。
不同材料的连接部分,对于平面连杆机构的工作效率和稳定性有着非凡的意义。
因此,在设计时,应本着安全、可靠、实用的原则,选用优质、耐用的材料,确保机构长期稳定、可靠的工作。
以汽车减震器为例,汽车减震器中使用的是多连杆机构原理,作为一种基于平面连杆机构的机构类型,它通过几个连杆的特定结构和布局,使得整个减震器能够更好地适应路况,缓解车辆的震动和冲击。
汽车减震器的设计考虑了多个因素,包括结构的稳定性和可靠性,杆件的材质和尺寸比例等。
总结来说,平面连杆机构是机械原理中非常重要的一种机构类型,广泛应用于机械和工程领域,需要经过仔细的设计和考虑,才能达到最好的运转效果。
设计者需要从多个维度进行考虑,包括长度比例、铰链/球头的位置、材质选择等等。
这些因素的合理应用,能够使平面连杆机构能够更好地适应不同的任务需求,达到最高的技术性能和质量水平。
机械原理-平面连杆机构及设计

平面连杆机构的运动分析
1
位置分析
通过几何和三角学的方法,确定各个连
速度分析
2
杆和转轴的位置。
计算各个部件的速度,了解机构的运动
特性。
3
加速度分析
研究连杆的加速度,对机械系统的稳定 性和性能影响重大。
平面连杆机构的设计原则
力学平衡Biblioteka 确保各个连杆和转轴保持力学平衡,避免不必 要的应力。
优化尺寸
选择合适的尺寸和比例,以提高系统的性能和 耐久性。
机械原理-平面连杆机构及设计
探索机械原理中的平面连杆机构,深入了解其组成部分、运动分析、设计原 则、类型和应用领域。
什么是平面连杆机构
平面连杆机构是由连杆和旋转副组成的机械装置,用于转换直线运动和旋转运动。它被广泛应用在各种机械设 备和工具中。
平面连杆机构的组成部分
• 连接杆:用于连接各个部件并传递力和运动。 • 转轴:提供连杆的旋转运动。 • 摩擦面或球面:减小连杆关节的摩擦。 • 约束物:限制连杆的自由运动。
减小摩擦
使用适当的润滑和设计摩擦减小装置,提高效 率。
动态平衡
通过合理设计和调整质量分布,减少系统的振 动。
常见的平面连杆机构类型
滑块曲柄机构
由连接杆、连杆、中心轴和滑块 组成,广泛应用在汽车和机床。
钟摆式机构
采用钟摆原理,具有稳定的运动 轨迹,用于摆锤和钟表。
平行连杆机构
通过平行排列的连杆传递运动和 力,在工程和自动化领域有广泛 应用。
平面连杆机构的应用领域
1 工业生产设备
机械加工、装配线和工厂自动化。
3 家庭用具
打印机、洗衣机和电动工具。
2 交通运输工具
汽车、火车和航空器。
机械原理平面连杆机构及设计

机械原理平面连杆机构及设计平面连杆机构是一种最为基本的机械结构,由于其结构简单、运动可靠等特点,被广泛应用于各种机械设备中。
本文将对平面连杆机构进行介绍,并探讨其设计原理。
平面连杆机构是由至少一个定点和至少三个连杆组成的机构。
定点为固定参考点,连杆是由铰链连接的刚性杆件。
连杆可以分为连杆和曲柄,连杆连接在定点上,曲柄则旋转。
平面连杆机构的运动由这些连杆的位置和相互连接方式决定。
平面连杆机构的设计原理基于以下几个方面:1.运动分析:在设计平面连杆机构之前,首先需要进行运动分析,确定所需的运动类型。
运动类型可以是旋转、平移、摆动、滑动等。
通过运动分析,可以确定连杆的长度和相互连接的方式。
2.运动性能:平面连杆机构的优点是运动可靠,但运动性能也是需要考虑的重要因素。
例如,设计中需要考虑速度、加速度、力和力矩等参数,以满足机构的运动要求。
3.静力学分析:平面连杆机构在工作过程中可能会受到外力的作用,因此需要进行静力学分析。
静力学分析可以确定机构的力矩和应力,从而确定设计的合理性。
4.运动合成:在进行平面连杆机构的设计过程中,需要进行连杆的运动合成。
运动合成是指通过选择适当的连杆长度和连接方式,实现所需的运动类型。
5.运动分解:运动分解是指将合成的运动分解为各个连杆的运动。
通过运动分解,可以确定每个连杆的运动规律,从而进行设计。
当以上原理得到了充分的了解和运用后,可以进行平面连杆机构的具体设计。
具体的设计包括以下几个步骤:1.确定所需的运动类型:根据机械设备的需求,确定所需的运动类型,例如旋转、平移、摆动等。
2.运动分析:对机构进行运动分析,确定连杆的位置和连接方式。
根据机构的运动要求和外力作用,确定连杆的长度。
3.动力学分析:进行动力学分析,确定机构运动时的力学参数,如速度、加速度、力和力矩等。
4.运动合成与分解:根据所需的运动类型,进行运动合成和分解,确定连杆的运动规律。
5.结构设计:根据上述分析和计算结果,进行结构设计。
机械原理-平面连杆机构的运动分析和设计

平面连杆机构的设计流程和方法
在这个部分中,我们将深入探讨平面连杆机构的设计,介绍流程和方法,提供实际案例分析,帮助您了解如何设 计成功的机械。
1.
需求分析
将客户的需求转化为机械设计
目标。
2.
构思和设计
基于机械原理构思和设计机械
装备支撑结构,并采用 CAD 软
件实施初始的草图或模型。
3.
材料选择
选择合适的材料和工艺,确保
结构和类型
平面连杆机构通常由零件精细制 造而成,以满足工业和商业目的 的要求。
工程应用
机械工程师们可以使用平面连杆 机构来完成各种复杂的任务,如 发动机和自动化流水线等。
日常应用
平面连杆机构可以进一步应用在 日常用品中,如钟表、洗衣机和 自动售货机等。
平面连杆机构的运动分析方法
在这个部分中,我们将探索平面连杆机构的运动学和动力学,介绍运动方程和速度方程,以及如何用数学 公式计算不同零件的运动和速度。
1 平衡条件
平衡是指物理系统中所有力和运动之间所需达到的状态,这是机械工程师需要考虑的重 要问题。
2 稳定性
稳定性是一个重要的物理学概念,涉及动量、速度和质量,能够帮助工程师在设计平面 连杆机构时考虑不同零件的状态和取向。
3 应用场景
平面连杆机构无处不在,具有开发良好设计的潜力,是自动化流水线的核心,也是钟表、 汽车和机器人的重要部分。
1
运动学
运动学研究物体运动的规律和运动参数,如位移、速度、加速度等。
2
动力学
动力学研究物体的运动状态和运动参数之间的关系,如动量、力和功等。
3
数值模拟
数字计算能够预测机械零件的运动,利用计算机模拟机械过程,提高设计效率。
机械原理大作业-连杆机构

设计内容
结论
1. 机构结构分析 1)计算机构自由度,确定机构是否有确定运动。
机构自度 F=1
本机构中,n= 5 , pL= 7
,pH = 0
则有:F=3n-2PL –PH= 3*5-2*7=1
是否有确定
机构确定运动判断: 因 F= 1 ,原动件个数= 1 ,可知: 自由度等于原动件数,机构有确定 的运动。
➢ 求解速度 vB 、角速度 2 : 矢量方程:
大小 ? √ ? 方向 ⊥BD ⊥OA ⊥AB
逆时针方向 ➢ 求解速度 vC 、2 杆质心 S2 的速度 vs2 :
vB =1.57m/s 2 =0.36rad/s, 逆时针方向
vC =1.56m/s vs2 =1.53m/s
-3-
➢ 求解速度 vE 、角速度 4 : 矢量方程:
动态静力学参数:m2=20 kg , JS2 = 1.1 kg m2 ,m5=50 kg
表 2 阻抗力参数表
班级序号 1
2
3
4
5
6
7
8
9
10
Fr /N
500 600 700
800
900
1000 1100 1200 1300 1400
-1-
机械原理模块训练一
二、 训练要求
通过对干草压缩机六杆机构进行结构分析、运动分析和力分析,对该设备的运动性能做出 定量的计算,为新设备的设计与评价提供依据。 机构结构分析:了解机构组成,学会对机构工作原理简图表达,判断机构的结构组成是否可行。 机构运动分析:已知原动件运动参数情况下,学会求解机构输出端和机构中关键点的运动参数。 机构动态静力分析:当已知工作阻力时,需要给机器配置动力,通过平衡力求解可以获得;当 机器安装时需要知道支座的反力,可通过动态静力分析获得。
机械原理第三章平面连杆机构及其设计

b12
C1
B
B2
B1
b. 设计 b12
c12
A
B2
C1
C2
B1
A点所在线
A
D点所在线
D
C C2
D
★ 已知连杆两位置
c23
——无穷解。要唯一解需另加条件 ★ 已知连杆三位置
b23 B3
c23
——唯一解 ★ 已知连杆四位置
——无解 B3
b12 B2 B1
C1 C2
C3
AD
B2 B1
分析图3-20
C2 C1 B4
反平行四边形
车门开闭机构
3)、双摇杆机构
若铰链四杆机构的两连架杆均为摇杆, 则此四杆机构称为双摇杆机构。
双摇杆机构
双摇杆机构的应用 鹤式起重机机构
鹤式起重机
倒置机构:通过更换机架而得到的机构称为原机构的倒置机构。
变化铰链四杆机构的机架
C
B
整转副
2
(<360°)
(0~360°)
3
1
(0~360°)
(1)、取最短构件为机架时,得双曲柄机构。 (2) 、取最短构件的任一相邻构件为机架时,均得曲柄
摇杆机构。 (3)、取最短构件的对面构件为机架时,得双摇杆机构。
判断:所有铰链四杆机构取不同构件为机架时,都能演化成带 曲柄的机构。
例:图示机构尺寸满足杆长条件,当取不同构件为机架时 各得什么机构?
取最短杆相 邻的构件为 机架得曲柄 摇杆机构
最短杆为 机架得双 曲柄机构
取最短杆对 边为机架得 双摇杆机构
特殊情况:
如果铰链四杆机构中两个构件长度相等且均为最短杆 1、若另两个构件长度不相等,则不存在整转副。 2、若另两个构件长度也相等, (1)当两最短构件相邻时,有三个整转副。 (2)当两最短构件相对时,有四个整转副。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
机械原理课程作业(一)平面连杆机构的运动分析(题号:1-A )班级 03021101学号姓名成绩同组者完成日期 2014年1月1日目录一.题目及原始数据 (3)二.平面连杆机构运动分析方程 (4)三.计算程序框图 (6)四.计算源程序 (7)五.计算结果 (13)六.运动线图分析 (17)七.运动线图分析 (19)八.体会及建议 (20)九.参考书目 (20)一. 题目及原始数据1.如图1所示平面六杆机构,试用计算机完成其运动分析。
图1设已知各构件的尺寸如表1所示,又已知原动件1以等角速度沿逆时针方向回转,试求各从动件的角位移、角速度、角加速度以及E 点的位移、速度、加速度的变化情况。
已知其尺寸参数如下表所示:表1 平面六杆机构尺寸参数 () mm2、题目要求与成员组成及分工: (1)题目要求:三人一组计算出原动件从0到360时(计算点数N=37)所要求的各运动变量的大小,并绘出运动曲线图及轨迹曲线,本组选取题号为:1—A ,1—B,1-C 组。
(2)分工比例:学号 姓名 分工2011300652 张正栋 报告书写,制图、程序2011300620 肖川 制图 2011300622尹志成方程推导组号1ll 2 l 3 l 4 l 5 l 6αABC2-A2-B 3-C26.5 67.5 87.5 52.4 43600l2=116.6l2=111.6l2=126.6二. 平面连杆机构运动分析方程1. 位置方程在图1的直角坐标系中,建立该六杆机构的封闭矢量方程:将上式写成在两坐标轴上的投影式,并改写成方程左边尽含未知量的形式,即得1122334112233'1122226655'1122226655cos cos cos sin sin sin cos cos cos()cos cos sin sin sin()sin sin G G L L L L L L L L L L x L L L L L y L L θθθθθθθθπαθθθθθπαθθθ⎧⋅+⋅=⋅+⎪⋅+⋅=⋅⎪⎨⋅+⋅-⋅-+=-⋅-⋅⎪⎪⋅+⋅-⋅-+=-⋅-⋅⎩将上式化简可得:2233411223311'222255664'22225566cos cos cos sin sin sin cos cos()cos cos sin sin()sin sin G GL L L L L L L L L L L x L L L L L y θθθθθθθθαθθθθαθθ⎧⋅-⋅=-⋅⎪⋅-⋅=-⋅⎪⎨⋅+⋅-+⋅+⋅=-⎪⎪⋅+⋅-+⋅+⋅=⎩ 由以上各式即可得。
2. 速度方程根据A ω=ω1B ,可得222333111222333111'222222555666'222222555666sin sin sin cos cos cos sin sin()sin sin 0cos cos()cos cos 0L L L L L L L L L L L L L L θωθωθωθωθωθωθωθαωθωθωθωθαωθωθω⎧-⋅⋅+⋅⋅=⋅⋅⎪⋅⋅-⋅⋅=-⋅⋅⎪⎨-⋅⋅-⋅-⋅-⋅⋅-⋅⋅=⎪⎪⋅⋅+⋅-⋅+⋅⋅+⋅⋅=⎩化为矩阵形式为:2233222333'222255665'222255666111111111sin sin 00cos cos 00sin()sin 0sin sin cos()cos 0cos cos sin cos sin cos L L L L L L L L L L L L L L L L θθωθθωθαθθθωθαθθθωθθωθθ⎡⎤⎡⎤-⋅⋅⎢⎥⎢⎥⋅-⋅⎢⎥⎢⎥⋅⎢⎥⎢⎥-⋅--⋅-⋅-⋅⎢⎥⎢⎥⎢⎥⎢⎥⋅-+⋅⋅⋅⎣⎦⎣⎦⎡⋅⎢-⋅⎢=⋅⎢⋅⎢-⋅⎣⎤⎥⎥⎥⎥⎢⎥⎦3. 加速度方程矩阵对时间求一阶导数,可得加速度矩阵为:2233222333'222255665'2222556662233223322sin sin 00cos cos 00sin sin()0sin sin cos cos()0cos cos cos cos 00sin sin 00cos θθεθθεθθαθθεθθαθθεθθθθθ-⋅⋅⎡⎤⎡⎤⎢⎥⎢⎥⋅-⋅⎢⎥⎢⎥⋅=⎢⎥⎢⎥-⋅-⋅--⋅-⋅⎢⎥⎢⎥⋅+⋅-⋅⋅⎣⎦⎣⎦-⋅⋅-⋅⋅-⋅L L L L L L L L L L L L L L L L L 2112211231'2225566115'222225566116cos sin cos()0cos cos cos sin sin()0sin sin sin θωθωωθαθθθωθθαθθθω⋅⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⋅⎢⎥⎢⎥⎢⎥⋅+⋅⎢⎥⎢⎥⎢⎥-⋅--⋅-⋅⋅⎢⎥⎢⎥⎢⎥-⋅-⋅--⋅-⋅⋅⎢⎥⎣⎦⎣⎦⎣⎦L L L L L L L L L L L4. E 点运动分析1) 位移:⎩⎨⎧⋅-⋅+=⋅-⋅+=55665566sin sin cos cos θθθθL L y y L L x x G EG E2) 速度:⎪⎩⎪⎨⎧⋅⋅-⋅⋅=⋅⋅+⋅⋅-=555666555666cos cos sin sin ωθωθωθωθL L v L L v yx E E 3) 加速度:⎪⎩⎪⎨⎧⋅⋅-⋅⋅+⋅⋅+⋅⋅-=⋅⋅+⋅⋅+⋅⋅-⋅⋅-=5552555666266655525556662666cos sin cos sin sin cos sin cos εθωθεθωθεθωθεθωθL L L L a L L L L a yx E E三.计算程序框图开始输入L1,L2,L3,L4,L5,L6,L2’,xg,yg,ωI=0θ1=I*10°用矢量法求解角位移函数,并计算θ2,θ3,θ5,θ6,并计算Xe,Ye调用系数矩阵A子函数,计算A调用原动件位置参数矩阵B子程序,创建矩阵B调用求解角速度子程序,调用高斯消去法求解A*ω=B*ω1,得到ω2,ω3,ω5,ω6,再求解Vex,Vey调用系数矩阵DA,计算DA调用系数矩阵DB,计算DB调用求解角加速度子程序,计算B(K)= -DA*ω+DB*ω1,然后调用高斯消去法程序结A*a= B(K)求的a2,a3,a5,a6,再求出aex,aeyI=I+1I<3输出结果结束图2四.计算源程序#include<stdio.h>#include<stdlib.h>#include<math.h>#define PI 3.1415926#define N 4void Solutionangle(double [18],double ); /*矢量法求角位移*/void Solutionspeed(double [N][N],double [N],double [18],double ); /*角速度求解*/void Solutionacceleration(double [N][N],double [N][N],double [N],double [18]);/*角加速度求解*/void GaussianE(double [N][N],double [N],double [N]);/*高斯消去*/void FoundmatrixA(double [18],double [N][N]); //创建系数矩阵Avoid FoundmatrixB(double [18],double ,double [N]);//创建系数矩阵Bvoid FoundmatrixDA(double [18],double [N][N]);//创建矩阵DAvoid FoundmatrixDB(double [18],double ,double [N]);//创建矩阵DB//定义全局变量double l1=26.5,l2=105.6,l3=67.5,l4=87.5,l5=34.4,l6=25;double l2g=65.0,xg=153.5,yg=41.7,inang=PI/3,as1=1.0;//主函数int main(){int i,j;FILE *fp;double shuju[36][18];double psvalue[18],a[N][N],da[N][N],b[N],db[N],ang1;//建立文件,并制表头if((fp=fopen("file1.txt","w"))==NULL){printf("Cann't open this file.\n");exit(0);}fprintf(fp,"\n The Kinematic Parameters of Point 5\n");fprintf(fp," ang2 ang3 ang5 ang6");//计算数据并写入文件for(i=0;i<36;i++){ang1=i*PI/18;Solutionangle(psvalue,ang1);FoundmatrixB(psvalue,ang1,b);FoundmatrixA(psvalue,a);Solutionspeed(a,b,psvalue,ang1);FoundmatrixDA(psvalue,da);FoundmatrixDB(psvalue,ang1,db);Solutionacceleration(a,da,db,psvalue);//for(j=0;j<4;j++)//{shuju[i][j]=psvalue[j]*180/PI;}for(j=11;j<12;j++){shuju[i][j]=psvalue[j];}fprintf(fp,"\n");for(j=11;j<12 ;j++)fprintf(fp,"%12.3f",shuju[i][j]);}fclose(fp);if((fp=fopen("file2.txt","w"))==NULL){printf("Cann't open this file.\n");exit(0);}fprintf(fp,"\n The Kinematic Parameters of Point 5\n");fprintf(fp," ang2 ang3 ang5 ang6");fprintf(fp," as2 as3 as5 as6");fprintf(fp," aas2 aas3 aas5 aas6");fprintf(fp," xe ye vex vey aex aey\n");//计算数据并写入文件for(i=0;i<36;i++){ang1=i*PI/18;Solutionangle(psvalue,ang1);FoundmatrixB(psvalue,ang1,b);FoundmatrixA(psvalue,a);Solutionspeed(a,b,psvalue,ang1);FoundmatrixDA(psvalue,da);FoundmatrixDB(psvalue,ang1,db);Solutionacceleration(a,da,db,psvalue);for(j=0;j<4;j++){shuju[i][j]=psvalue[j]*180/PI;}for(j=4;j<18;j++){shuju[i][j]=psvalue[j];}fprintf(fp,"\n");for(j=0;j<18;j++)fprintf(fp,"%12.3f",shuju[i][j]);}fclose(fp);//输出数据for(i=0;i<36;i++){ang1=i*PI/18;printf("\n输出ang1=%d时的求解\n",i*10);printf("angle angspeed angacceleration\n");for(j=0;j<4;j++)printf("%lf\t",shuju[i][j]);printf("\n");for(j=4;j<8;j++)printf("%lf\t",shuju[i][j]);printf("\n");for(j=8;j<12;j++)printf("%lf\t",shuju[i][j]);printf("\n");for(j=12;j<16;j++)printf("%lf\t",shuju[i][j]);printf("\n");printf("E(x)\t\tE(y)\n");for(j=16;j<18;j++)printf("%lf\t",shuju[i][j]);printf("\n");}}/*矢量法求角位移*/void Solutionangle(double value[18],double ang1){int i;double xe,ye,A,B,C,phi,alpha,csn,ang5g,d2,d,ang2,ang3,ang5,ang6;A=2*l1*l3*sin(ang1);B=2*l3*(l1*cos(ang1)-l4);C=l2*l2-l1*l1-l3*l3-l4*l4+2*l1*l4*cos(ang1);ang3=2*atan((A+sqrt(A*A+B*B-C*C))/(B-C));if(ang3<0)//限定ang3大小{ang3=2*atan((A-sqrt(A*A+B*B-C*C))/(B-C));}ang2=asin((l3*sin(ang3)-l1*sin(ang1))/l2);xe=l4+l3*cos(ang3)+l2g*cos(ang2-inang);//求E点坐标ye=l3*sin(ang3)+l2g*sin(ang2-inang);phi=atan2((yg-ye),(xg-xe));d2=(yg-ye)*(yg-ye)+(xg-xe)*(xg-xe);d=sqrt(d2);csn=(l5*l5+d2-l6*l6)/(2.0*l5*d);alpha=atan2(sqrt(1.0-csn*csn),csn);ang5g=phi-alpha;ang5=ang5g-PI;ang6=atan2(ye+l5*sin(ang5g)-yg,xe+l5*cos(ang5g)-xg);value[0]=ang2;value[1]=ang3;value[2]=ang5;value[3]=ang6;value[12]=xe;value[13]=ye;//限定角度大小for(i=0;i<4;i++){while(value[i]>2*PI)value[i]-=2*PI;while(value[i]<0)value[i]+=2*PI;}}/*角速度求解*/void Solutionspeed(double a2[N][N],double b2[N],double value[18],double ang1){double ang2,ang3;ang2=value[0];ang3=value[1];double p2[N];GaussianE(a2,b2,p2);value[4]=p2[0];value[5]=p2[1];value[6]=p2[2];value[7]=p2[3];value[14]=-l3*value[5]*sin(ang3)-l2g*value[4]*sin(ang2-inang);value[15]=l3*value[5]*cos(ang3)+l2g*value[4]*cos(ang2-inang);}/*角加速度求解*/void Solutionacceleration(double a3[N][N],double da3[N][N],doubledb3[N],double value[18]){int i,j;double ang2,ang3;ang2=value[0];ang3=value[1];double bk[N]={0};double p3[N];for(i=0;i<N;i++){for(j=0;j<N;j++){bk[i]+=-da3[i][j]*value[4+j];}bk[i]+=db3[i]*as1;}GaussianE(a3,bk,p3);value[8]=p3[0];value[9]=p3[1];value[10]=p3[2];value[11]=p3[3];value[16]=-l3*value[9]*sin(ang3)-l3*value[5]*value[5]*cos(ang3)-l2g*value[8]*sin(a ng2-inang)-l2g*value[4]*value[4]*cos(ang2-inang);value[17]=l3*value[9]*cos(ang3)-l3*value[5]*value[5]*sin(ang3)+l2g*value[8]*cos(a ng2-inang)-l2g*value[4]*value[4]*sin(ang2-inang);}/*高斯消去法解矩阵方程*/void GaussianE(double a4[N][N],double b4[N],double p4[N]){int i,j,k;double a4g[N][N],b4g[N],t;for(i=0;i<N;i++)for(j=0;j<N;j++)a4g[i][j]=a4[i][j];for(i=0;i<N;i++)b4g[i]=b4[i];//使主对角线上的值尽可能大if(a4g[0][0]<a4g[1][0] && a4g[0][1]>a4g[1][1]){for(j=0;j<N;j++){t=a4g[0][j];a4g[0][j]=a4g[1][j];a4g[1][j]=t;}t=b4g[0];b4g[0]=b4g[1];b4g[1]=t;}if(a4g[2][2]<a4g[3][2] && a4g[2][3]>a4g[3][3]){for(j=0;j<N;j++){t=a4g[2][j];a4g[2][j]=a4g[3][j];a4g[3][j]=t;}t=b4g[2];b4g[2]=b4g[1];b4g[3]=t;}//初等行变换for(j=0;j<N;j++)for(i=0;i<N;i++){if(i!=j){for(k=0;k<N;k++)if(k!=j){a4g[i][k]-=a4g[i][j]/a4g[j][j]*a4g[j][k];}b4g[i]-=b4g[j]*a4g[i][j]/a4g[j][j];a4g[i][j]=0;}}for(i=0;i<N;i++)b4g[i]/=a4g[i][i];p4[0]=b4g[0];p4[1]=b4g[1];p4[2]=b4g[2];p4[3]=b4g[3];}//创建系数矩阵Avoid FoundmatrixA(double value5[18],double a5[N][N]){double ang2,ang3,ang5,ang6;ang2=value5[0];ang3=value5[1];ang5=value5[2];ang6=value5[3];a5[0][0]=-l2*sin(ang2);a5[0][1]=l3*sin(ang3);a5[1][0]=l2*cos(ang2);a5[1][1]=-l3*cos(ang3);a5[2][0]=-l2*sin(ang2)-l2g*sin(ang2-inang);a5[2][2]=-l5*sin(ang5);a5[2][3]=-l6*sin(ang6);a5[3][0]=l2*cos(ang2)+l2g*cos(ang2-inang);a5[3][2]=l5*cos(ang5);a5[3][3]=l6*cos(ang6);a5[0][2]=a5[0][3]=a5[1][2]=a5[1][3]=a5[2][1]=a5[3][1]=0;}//创建系数矩阵Bvoid FoundmatrixB(double value6[18],double ang1,double b6[N]){b6[0]=b6[2]=l1*sin(ang1)*as1;b6[1]=b6[3]=-l1*cos(ang1)*as1;}//创建矩阵DAvoid FoundmatrixDA(double value7[18],double da7[N][N]){double ang2,ang3,ang5,ang6,as2,as3,as5,as6;ang2=value7[0];ang3=value7[1];ang5=value7[2];ang6=value7[3];as2=value7[4];as3=value7[5];as5=value7[6];as6=value7[7];da7[0][0]=-l2*as2*cos(ang2);da7[0][1]=l3*as3*cos(ang3);da7[1][0]=-l2*as2*sin(ang2);da7[1][1]=l3*as3*sin(ang3);da7[2][0]=as2*(-l2*cos(ang2)-l2g*cos(ang2-inang));da7[2][2]=-as5*l5*cos(ang5);da7[2][3]=-as6*l6*cos(ang6);da7[3][0]=as2*(-l2*sin(ang2)-l2g*sin(ang2-inang));da7[3][2]=-as5*l5*sin(ang5);da7[3][3]=-as6*l6*sin(ang6);da7[0][2]=da7[0][3]=da7[1][2]=da7[1][3]=da7[2][1]=da7[3][1]=0;}//创建矩阵DBvoid FoundmatrixDB(double value8[18],double ang1,double db8[N]){db8[0]=db8[2]=l1*as1*cos(ang1);db8[1]=db8[3]=l1*as1*sin(ang1);}五.计算结果对于2-A组数据计算结果表2,表3,表4所示。