装配图高压均质机传动端的设计及运动仿真(1)
装配图高压均质机传动端的设计及运动仿真(1),装配,高压,均质机,传动,设计,运动,仿真
高压均质机传动端的设计及运动仿真摘 要本设计设计的是高压均质机动力端主要零件。首先,文章介绍了高压均质机的工作原理。流体在高压状态下通过细小缝隙时,会产生较大的剪切力、撞击力和空穴力,使流体中的固体颗粒破碎为微小颗粒,高压均质机就是利用这一原理工作的。接着,文章参考现有的均质机结构,确定了均质机主要结构参数,然后,按照高压往复泵的设计方法对高压均质机的主要零部件,如传动装置、曲轴、连杆等进行了结构设计。还有液力端泵阀的设计,并对其进行了相应的强度校核。最后,文章介绍了本次设计中还有高压均质机的运动仿真,采用了C语言程序,并对其进行了详细的说明。关键词:高压均质机 食品机械 均质阀目 录摘要 1绪论 4第一章 均质机及其基本参数 51.1均质机的均质原理 51.2均质机的工作原理 51.3均质机的基本参数 6第二章 总体设计 92.1传动端结构形式的选择 92.2液力端结构形式的选择 92.3确定泵的主要结构参数 102.4原动机的选择 12第三章 动力端的设计计算 143.1传动装置的设计 143.2曲轴的设计 153.3连杆与其轴瓦 153.4十字头 16第四章 液力端零部件设计 164.1泵阀设计16第五章 运动仿真205.1 C语言程序简介205.2传动端运动及程序20设计小结32致谢33参考资料 34绪 论高压均质是一种制备超细液液乳化物或液固分散物的通用设备,被广泛应用与各行业的生产者和科技研领域。例:一、 食品饮料行业:豆奶、花生奶、松子奶等各种植物蛋白饮料。核桃露、杏仁露、莲子露、椰子汁等各种悬浮果汁饮料。酸奶、均质奶、纯牛奶、甜牛奶、乳酸饮料、冰淇淋、豆奶粉等各种乳品和乳制品。二、 制药:抗生素、各种乳剂、浆液制剂、中药制剂、花粉破碎及各种营养保健液。三、 轻工化工行业:香精香料、化妆品、乳化硅油、感光剂、增亮剂、高级涂料、颜料、染料等。四、 生物工程技术:对大肠杆菌、胞进行破碎,撮取其有效成分。随着人民生活水平的提高,食品工业必将跟上时代的步伐,不仅要求食品本身的营养丰富,还对其质量、口味、外观、保存等提出了高标准,这样必然把食品工业推上一个新高潮。食品品种繁多,本设计是主要应用于乳品工业中。它是一种特殊的高压泵,用于喷雾干燥设备中,可使液体分散成细微的雾滴,便于干燥成粉状。通过均质的炼乳、冰淇淋、代乳粉,液体中的分散项破裂成细微状态,可减少沉淀,增加粘稠性,口感细腻,并延长存放时间。均质机不仅在乳品工业和冰淇淋生产中得到广泛应用,而且还适用于医药、化工生产中。总之,在我国均质机发挥出的作用越来越大,因此需要人们对其进行深入的研究,以便设计生产。本设计参考现有的均质机而设计,力求经济、结构合理,但肯定还有许多的不足之处,希望在老师和同学的帮助下,得到进一步的改进。第1章 均质机及其基本参数均质机是一种特殊的高压泵,利用高压的作用,使物料中的脂肪球的破裂到直径小于2m达99%。均质机由均质头和高压泵组成,即往复柱塞泵。它包括液力端和动力端。通过均质后的牛奶、脂肪球直径和所占比例均发生变化,如表1-1:表1-1脱脂乳与均质乳中的脂肪球比较脂肪球()脱脂乳()均质乳()一段二段0141.819.289.21247.766.510.3239.212.60.5340.91.70450.100560001.1均质机的均质原理1.1.1剪切作用流体在高速流动时,在均质机头隙缝处,产生剪切作用而均质。脂肪球通过三个柱塞往复泵吸入泵体时,在缝隙处先是被延展,同时又存在着液流通过均质阀时的涡动作用,使延展部分被剪切为更小的脂肪球微粒。又因为液流中存在着表面活性物质,它围绕在更细小的脂肪球微粒外层形成一种这些微粒不再互相粘合的膜.脂肪滴由此离开,而后面部分的还没有流进缝隙。当到达均质阀活门缝隙处时,会同样的剪切作用继续形成更小的脂肪球微粒。1.1.2撞击学说三联柱塞往复泵的高压作用使液体中脂肪球和均质阀发生高速撞击现象,因而使料液中的脂肪球破裂。1.1.3空穴学说因高压作用使料液高速流过均质阀缝隙处时,造成相当于高频振动的效果,能在瞬间引起空穴现象,使脂肪球碎裂。在实际工作中,高压均质机的原理是以上几种学说的综合。1.2均质机的工作原理如图1-1所示,当高压液体通过阀的阀座和阀杆的狭窄通道时(可以用调节手柄调节间隙大小),使液料速度达150300m/s,压力降低至液料汽化压力,使之形成气泡。当液料离开阀座门间的间隙时,其速度降低,压力升高,导致气泡被压破,产生内爆,产生的空穴和高频振动使脂肪球颗粒破碎。此过程中,能量强烈释放,液料形成湍流,冲击冲击流,完成均质过程。图1-1双级均质阀工作示意图1.3均质机的基本参数1.3.1瞬时流量理论上,瞬时流量=工作腔容积变化率如图1-2图1-2图1-3双缸泵的无因次流量曲线图1-4 三缸泵的无因次流量曲线q = A=Au=Ar(u) (q)= = (u)其中(q) -无因次瞬时流量; (u)-无因次瞬时速度, (u)=-(sin+sin2)。衡量流量脉动性的指标为不均匀系数=单缸泵:B=3.14 ; 双缸泵:B/2=1.57 ;三缸泵:B/3=1.04 ; 四缸泵:B1.1 ;可以看出,四缸泵的脉动性反而比三缸泵有所增加,流量曲线如图1-3,图1-4。1.3.2泵的压力均质压力对脂肪球大小的影响如表1-2:表1-2压力(kgf/cm)脂肪球直径()平均直径()01183.71351142.3970171.68105141.40141131.08176130.992110.520.76随着压力的提高,脂肪球颗粒减少,考虑到制造工艺性、经济性,压力不宜太高,所以本机选180 kg f/cm。1.3.3均质温度均质与温度的关系如表1-3表1-3脂肪球直径()204065012.31.94.31229.336.774.42323.321.19.03429.825.212.345-15.205615.200表中可以看出,均质最佳温度为65。本设计要求料液温度为6070,同时,可以提高密封圈效率。1.3.4效率理论流量与实际流量之间有一定的流量损失,即容积损失,它包括四部分:流体的压缩或膨胀造成的,阀在关闭时滞后造成的,阀关闭不严造成的泄漏,柱塞与密封圈之间的泄漏,取=+ =0.8第2章 总体设计2.1传动端结构形式的选择传动端为从动力输入端到十字头为止的部件,包括机体、曲柄、连杆、曲轴、十字头及润滑冷却等辅助设备。2.1.1曲轴曲轴为整体浇铸体,材料为QT60-2,本机采用二支点 三拐式。三个曲柄相位角相差120,曲柄与连杆之间轴瓦材料用20%锡铝合金。确定曲轴半径时考虑到两个方面的问题.较小时,强度、刚度无法满足,挠度、转角增加;较粗大时,要考虑加工挠性问题。曲拐的运动顺序为一、三、二。第一曲拐转角=,第二曲拐转角=+240,第三曲拐=+120。这可以使偏角大致相等,力求使机械惯性力和惯性力矩得到平衡,减轻对基础的饿挠性载荷。2.1.2连杆连杆大头采用剖分式,用特制定位螺栓定位,扣紧螺母防松,小头定位。是浇铸件,材料为QT60-2。连杆体和大小头中开油槽,油孔,来润滑曲柄和十字头。根据总体结构选=r/l=0.0625。2.1.3轴承有冲击载荷,适宜选用滚子轴承。2.1.4十字头整体铸件,材料ZG35。2.1.5传动方式选择采用一级带传动。2.2液力端结构形式的选择液力端是从柱塞一直到泵进出口管接头的部件,是介质的过流部分,包括液体缸、柱塞和密封件、吸排液阀组件、缸盖、阀箱盖。在选择液力端结构形式时,应遵循下述基本要求:a 过流性能好,水力阻力损失小,为此,液流通道应力求短而直,尽量逃避拐弯和急剧的断面变化;b 液流通道应利于气体排出,不允许有死区,造成气体滞留。通常,吸入阀应置于液缸体顶部;c 吸入阀和排出阀一般应该垂直布置,以利于阀板正常起闭和密封;d 余隙容积应尽可能的小,尤其是对高压短程泵;e 易损件寿命长,更换方便;f 制造工艺性好。2.2.1泵体卧式三联单作用泵的泵体为一整体式长方体不锈钢块锻造,材料为1Cr18Ni9Ti,其刚性好,工作腔间距小,机加工量小,吸排出阀布置为直通式三通体。其优点为过流性能好,余隙容积较小,结构紧凑,尺寸小,柱塞虽然不可以从液缸前塞处装拆,但T型孔加工工艺性好。2.2.2柱塞柱塞材料为3Cr13,表面经高频淬火,再精密加工和磨光,具有等硬度和光洁度的表面,有较高的耐磨性和防腐性。因为直径小,采用实心结构,加工简单。为不使柱塞发热,保证设备正常运转,柱塞上冷却水不可断。柱塞与十字头之间采用平面连接,结构简单,加工方便,易于装拆。2.2.3均质阀均质阀借调整螺旋弹簧对阀心的压力,得到调整流体压力的作用。在双级均质阀中,第一级流体压力为18MPa,主要使脂肪球破碎,第二级压力减至2.7MPa,主要使脂肪球均匀分散。本机用手动轮直接控制压力,操作方便,体积减小。均质头制造成两面均可使用的圆柱形结构,加工方便,使用寿命长。2.3确定泵的主要结构参数2.3.1活塞平均速度U的选择U的大小直接影响泵各运动副零部件的摩擦和磨损,特别是对柱塞及其密封的影响尤为显著。U过大则摩擦和磨损严重,会造成泄漏,流量下降,排出压力也不能达到额定值。U过小则液力端径向尺寸增加,传动端受力也增加从而使泵的总体尺寸和重量增加。一般可根据经验公式得到U的定量选取范围: U= K Nm/s 式中 U柱塞平均速度,m/s; K统计系数,液压机用三联或多联机动泵一般为0.210.70; N折合成单联单作用泵的有效功率,kw。 N=( p- p) Q / 612Z (k+1) pQ/ 612Z(k+1) kw式中 Q泵的流量,l/min p泵的排出压力,kg f/cm; p泵的吸入压力,kg f/cm;当p p或p为常压时,全压力p pp。 Z泵的联数(柱塞数); K系数,K-1= A/A,K=0,对双作用泵,A/A1,0K1。本设计中,Q=1.5 m /h=25 l/min, p=180 kg f/cm, Z=3, K=0, K=0.45,则 N=18025/(6123)=2.45KW U=0.452.45=0.6m/s2.3.2曲轴转速n和柱塞行程长度S的选择已知偏心距30,则行程为30,由U=ns/30得 n=30 U/S=300.6/0.03=600rpm2.3.3柱塞直径D的确定D=式中 Q泵的流量, m/S;S柱塞行程长度,m;n 曲轴转速(rpm)或柱塞的每分钟往复次数,spm;Z泵的联数(柱塞数);K系数,K=1A/A对单作用泵, A/A=1,K=0,对双作用泵, A/A1, 0K1;泵的容积效率。本设计中,Q=1.5 m/h=0.000417 m/h, S=30mm=0.03m, n=600rpm, Z=3, K=0, =0.8,则D=0.027m取柱塞直径D为30 mm,则行程比=S/D=1,符合其取值范围。2.3.4进出口的内管经d= ; d=式中 d吸入管内经,m; d排出管内经,m; Q泵的流量,m/s; v吸入管内介质的平均流速,m/s; v排出管内介质的平均流速,m/s;本设计中,d=0.016m d=0.015m考虑到加工工艺性,以及减小总体长度,可将滤网安在吸入管内,充分利用吸 入管的空间,可取d=40mm,d=25mm。2.4原动机的选择2.4.1泵的有效功率N和泵的总效率单位时间内,被泵排出的液体由泵获得的能量称为有效功率。N =pQ/612kw式中 p=p p 泵的全压力,kg f/cmp泵的排出压力,kg f/cmp泵的吸入压力,kg f/cmQ泵的流量 l/min本设计中,p=180kgf/cm Q=25 l/min 则N =18025/612=7.35kw泵的效率是综合衡量泵的能量损失的指标,用下式表示: = N/N式中 N泵的有效功率; N泵的输入功率。一般,泵的效率用计算方法很难确定,只能用实验方法确定。一般的选取范围是:电动泵的效率范围是=0.600.90蒸气直接作用泵的效率范围是=0.800.952.4.2原动机功率N= N/()kw式中 泵的传动装置效率; 原动机效率。由于泵的效率包括了泵的传动机构的摩擦损失,所以,泵的传动装置效率只与泵的减速机构的机械损失有关。当采用皮带传动时,=0.920.98 三角皮带传动时, =0.900.94 齿轮传动时,=0.900.94 (闭式);蜗杆传动时,=0.700.90(闭式)。本设计中,采用三角皮带传动,电动机为原动机,故 =0.85 =0.94则N=7.35/(0.850.94)=9.2kw考虑到往复泵的流量是脉动的,泵的载荷也是脉动的,此外,柱塞泵密封处的机械摩擦损失等也很嫩精确确定。为了使泵在实际运转中不致超载,应留有一定的余量,称为储备系数K,则实际原动机功率为:N= KN本设计中查得K=1.15,则N=1.159.2=10.58kw2.4.3原动机的选择原动机的选择应注意两点:1、原动机必须满足Nd的要求,2、选择原动机时应注意到转差率。根据本设计的要求,选择电动机为Y160M-4型电动机,额定功率11KW,同步转速1500r/min,满载转速14。第3章 动力端的设计计算3.1传动装置的设计根据设计要求,采用普通V带传动。本设计中,带轮材料采用灰铸铁,查得牌号为HT15-33其指标如下表3-1:表3-1最小抗拉强度/MPa硬度HBS1751372051451191791301101661201411573.1.1小带轮的结构和尺寸由Y160M-4电动机可知,其轴身直径d=42mm,长度L=110mm。故小带轮轴孔直径应取d=42mm,毂长应小于110 mm。由表查得,小带轮实心轮。结构如图3-1:3.1.2大带轮的结构和尺寸3.1.3 由曲轴尺寸知,孔经为65mm,基准直径为355 mm,则结构如图3-2:3.2曲轴的设计在往复泵中,曲轴是把原动机的旋转转化为柱塞往复运动的重要不见之一。工作时,它承受周期性的交变载荷,产生交变的扭转应力和弯曲应力,因此也是曲轴连杆机构最重要的受力部件。见图曲轴的相关设计和校核见“高压均质机”设计3.3连杆与其轴瓦连杆是传动端曲柄连杆机构中连接曲柄和十字头的部件。连杆的运动是一平面运动,可以把连杆看成是沿液缸中心线移动和绕十字头销摆动的两种简单运动的合成。连杆的相关设计见“高压均质机”设计。见图3.4十字头三联但作用泵的最大柱塞力为P=1272KGF,采用整体式十字头,十字头材料为ZG35铸钢,工作面浇铸ChSnSB11-6轴承合金,十字销材料选用20Cr,连接方式为连杆销连接。十字头的相关设计见“高压均质机”设计。第4章 液力端主要零部件设计4.1 泵阀设计 泵阀是往复泵工作过程的直接组成件,也是往复泵中最重要的易损件之一。它的设计好坏直接影响泵的工作性能和使用寿命。锥形阀的制造较为复杂,但流道比较平滑,流量系数大,水力阻力小,过流能力强,密封性能好,不论介质粘度较高或粘度较低都比较适宜。而且,因为阀板刚度较大,通常多用于高压和超高压泵上,在计量泵自重阀中也有采用。 本设计选用下部翼形导向的锥形阀。为减轻阀重,增加流通能力,导翼断面为半月形凹槽,刚度好。阀和阀座材料为3Cr13不锈钢。4.1.1尺寸设计内容和项目参数选取及计算公式计算结果名称符号单位泵的排出P2kg f/cm常用压力(表压)180吸入压力P1kg f/cm(表压)0联或缸数Z3每缸排出阀或吸入阀数Z1泵理论流量QtL/min25柱塞直径Dcm3柱塞行程Scm3每分钟往复次数nSpm600介质重度g/cm1泵阀型式度锥形阀45阀板材料重度g/cm不锈钢冲压件7.8柱塞截面积Acm A= cm 7.065通过一个阀的流量QQ=212阀座孔最大瞬时流速Vcm/s一般范围150300cm/s212阀座孔径dcmd=22密封面接触宽度bcmb=0.20.28阀板直径dcmd=d+2bsin2.4阀板厚度cm=() d=0.2-0.330.6阀板重量GgG=21密封面接触面积AcmA=( d+b)b1.368阀板的公斤质量mfkg0.021试验系数K/cmgs1.30允许关闭速度ucm/su12最大升程hcmh0.2比值h/ dh/ d=0.10.1当量系数由d/d=0.1,查得=2.42.4系数KK=0.128系数K1.03系数KK=0.684Kk()9.018弹簧初始安装力FgG1506系数K60弹簧刚度Cg/cmC=G5070弹簧最大工作力FgF= F+Ch2520阀上最大载荷FgFF+(1-)G2538弹簧中经Dmm按结构选取22弹簧指数C查表11弹簧曲度系数K查表1.13许用扭转应力kg/mm查表,按65Mn钢丝取30钢丝直径dmmd1.62剪切弹性模量Gkg/mm8000弹簧工作圈数I圈i=7.5弹簧总圈数i圈i=i+(1.5-2)9弹簧节距tmmt=4.85自由高度HmmH=(t-d)i+( i-0.5)d39安装高度HmmH=H-10 F/C36钢丝展开长LmmL= i554.14.1.2结构设计4.1.3泵阀强度校核A.阀板与阀座密封面比压校核 略去阀板在关闭时的弹簧力F和介质中重量(1-)G;则比压p=p式中 p材料的允许比压,kg f/cm; 不锈钢的p=300-800B.阀板弯曲强度校核 阀板按静压作用校核弯曲强度。对于锥形阀可简化成周边自由支承的,受均布载荷p的平板,即:式中 在阀板中心最大弯曲应力,kg f/cm; p泵的排压与吸入压之差,kg f/cm;180 阀板材料许用弯曲应力,kg f/cm; 不锈钢 =1000-1200第5章 运动仿真5.1 C语言程序简介C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。5.2传动端运动及程序#include #include #define PI 3.1415926int xa=70,ya=270,xb,yb,xc,yc,xd=183,yd=270,xe,ye,xf,yf=75;double lalfa,lalfa1=360.0;double lab=50.5,lbc=108.75,lcd=112.5,lad=112.5,lde=225,lef=315,lb=195;double A,B,C,ac,a3,omiga1=5.236,omiga2,omiga3,omiga4,sc,vc;double alfa1,alfa2,alfa3,alfa4,alfa5;double ab=67.5,bc=145,cd=150,ad=150,de=300,ef=420,b=260;int alfa=0,l=300,m=100,xxc,yxc,xvc,yvc,xac,yac;/*/void set_angle()lalfa1-=10; if(lalfa10) lalfa1=lalfa1+360; lalfa=PI*lalfa1/180;void draw_link()int i; float A,B,C,l; double thita,gama; A=ad-ab*cos(lalfa); B=-ab*sin(lalfa); C=(A*A+B*B+cd*cd-bc*bc)/(2*cd); thita=2*atan(B+sqrt(A*A+B*B-C*C)/(A-C); if(thita0) thita+=PI; xb=(int)(lab*cos(lalfa)+xa; yb=ya-(int)(lab*sin(lalfa); xc=xd+(int)(lcd*cos(thita); yc=yd-(int)(lcd*sin(thita); gama=thita-0.5; xe=(int)(lde*cos(gama)+xd; ye=yd-(int)(lde*sin(gama); l=lde*sin(gama)-lb; xf=(int)(sqrt(lef*lef+l*l)+xe; setbkcolor(BLUE); setcolor(RED); setlinestyle(0,0,3); moveto(xa,ya); lineto(xb,yb); lineto(xc,yc); lineto(xd,yd); lineto(xe,ye); lineto(xf,yf); line(xc,yc,xe,ye); setcolor(15); setlinestyle(0,0,0); circle(xa,ya,5); floodfill(xa,ya,WHITE); circle(xd,yd,5); floodfill(xd,yd,WHITE); circle(xb,yb,3); floodfill(xb,yb,WHITE); circle(xc,yc,3); floodfill(xc,yc,WHITE); circle(xe,ye,3); floodfill(xe,ye,WHITE); moveto(xa,ya); lineto(xa-10,ya+10); lineto(xa+10,ya+10); lineto(xa,ya); line(xa-15,ya+10,xa+15,ya+10); for(i=4;i=30;i+=4) line(xa-15+i,ya+10,xa-15+i-3,ya+15); moveto(xd,yd); lineto(xd-10,yd+10); lineto(xd+10,yd+10); lineto(xd,yd); line(xd-15,yd+10,xd+15,yd+10); for(i=4;i=30;i+=4) line(xd-15+i,yd+10,xd-15+i-3,yd+15); bar(xf-10),(yf+6),(xf+10),(yf-6); line(375,yf+6,640,yf+6); for(i=0;i260;i+=8) line(380+i,yf+6,380+i-3,yf+11); /*line(0,310,640,310); line(200,0,200,480);*/void set_text()setcolor(YELLOW); settextstyle(4,0,5);/* outtextxy(180,200,MADE BY SPHINX!);*/ outtextxy(250,250,2000.5.18);links()int graphdriver=VGA,graphmode=VGAMED; initgraph(&graphdriver,&graphmode, ); do setactivepage(1); clearviewport(); set_angle(); draw_link(); set_text(); setvisualpage(1); setactivepage(0); clearviewport(); set_angle(); draw_link(); set_text(); setvisualpage(0); while(!kbhit(); getch(); closegraph();/*/set_c()A=ad-ab*cos(alfa1); B=-ab*sin(alfa1); C=(A*A+B*B+cd*cd-bc*bc)/(2*cd); alfa3=2*atan(B+sqrt(A*A+B*B-C*C)/(A-C); if(alfa30) alfa3+=PI; alfa2=atan(B+cd*sin(alfa3)/(A+cd*cos(alfa3); if(alfa20) alfa2+=PI; omiga3=omiga1*(ab*sin(alfa1-alfa2)/(bc*sin(alfa3-alfa2); omiga2=-omiga1*(ab*sin(alfa1-alfa3)/(cd*sin(alfa2-alfa3); alfa4=alfa3-0.5236; alfa5=asin(b-de*sin(alfa4)/ef)+2*PI; if(alfa50) alfa5+=PI; omiga4=-(de*omiga3*cos(alfa4)/(ef*cos(alfa5); a3=(bc*omiga2*omiga2+ab*omiga1*omiga1*cos(alfa1-alfa2)-cd*omiga3*omiga3*cos(alfa3-alfa2)/(cd*sin(alfa3-alfa2); xc=(de*cos(alfa4)+ef*cos(alfa5)/2; vc=-(-de*omiga3*sin(alfa4-alfa5)/cos(alfa5)/10; ac=(-(de*(a3*sin(alfa4-alfa5)+omiga3*omiga3*cos(alfa4-alfa5)+ef*omiga4*omiga4)/cos(alfa5)/100;draw_x()int i; setcolor(WHITE); line(0,l,640,l); line(m,0,m,480); line(360+m,0,360+m,480); line(m,0,m-8,20); line(m,0,m+8,20); line(640,l,620,l-8); line(640,l,620,l+8); for(i=m;i=620;i+=30) line(i,l,i,l+6); xxc=(int)(alfa+m); yxc=-(int)(70-xc); /*if(yxc64) yxc=yxc-64;*/ setcolor(RED); lineto(xxc,yxc);draw_v()xvc=(int)(alfa+m); yvc=(int)(l-vc); setcolor(YELLOW); lineto(xvc,yvc);draw_a()xac=(int)(alfa+m); yac=(int)(l-ac); setcolor(GREEN); lineto(xac,yac);chart()int graphdriver=VGA,graphmode=VGAHI; initgraph(&graphdriver,&graphmode, ); moveto(m,l); setbkcolor(BLACK); do alfa1=alfa*PI/180; set_c(); draw_x(); alfa=alfa+1; while(alfa=540); moveto(m,l); alfa=0; do alfa1=alfa*PI/180; set_c(); draw_v(); alfa=alfa+1; while(alfa=540); moveto(m,l); alfa=0; do alfa1=alfa*PI/180; set_c(); draw_a(); alfa=alfa+1; while(alfa=540); setfillstyle(1,RED); bar(5,450,25,460); settextstyle(0,0,2); setcolor(RED); outtextxy(30,446,displacement); setfillstyle(1,YELLOW); bar(240,450,260,460); settextstyle(0,0,2); setcolor(YELLOW); outtextxy(265,446,velocity); setfillstyle(1,GREEN); bar(410,450,430,460); settextstyle(0,0,2); setcolor(GREEN); outtextxy(435,446,acceleration); setcolor(WHITE); line(m,0,m,480); setlinestyle(3,0,1); line(m,64,m+255,64); line(m,216,m+45,216); line(m,225,m+120,225); settextstyle(0,0,0); outtextxy(m-45,64,570(x); outtextxy(m-45,216,270(x); outtextxy(m-45,225,856(v); outtextxy(m-60,430,-1545(v); /*drawzb*/ outtextxy(m-6,l+8,0); outtextxy(m+24,l+8,30); outtextxy(m+54,l+8,60); outtextxy(m+84,l+8,90); outtextxy(m+114,l+8,120); outtextxy(m+144,l+8,150); outtextxy(m+174,l+8,180); outtextxy(m+204,l+8,210); outtextxy(m+234,l+8,240); outtextxy(m+264,l+8,270); outtextxy(m+294,l+8,300); outtextxy(m+324,l+8,330); outtextxy(m+354,l+8,360); outtextxy(m+384,l+8,390); outtextxy(m+414,l+8,420); outtextxy(m+444,l+8,450); outtextxy(m+474,l+8,480); outtextxy(m+504,l+8,510); setlinestyle(0,0,0); /*line(355,0,355,480); line(145,0,145,480);*/ getch(); closegraph();/*/double vac,valfa1,valfa2,vomiga1=5.236,vomiga2,vxc,vvc;double vab,vbc,vb;int vjust,valfa=0,vl=300,vm=100,vxxc,vyxc,vxvc,vyvc,vxac,vyac; vset_c()valfa2=asin(vb-vab*sin(valfa1)/vbc);/* if(alfa20) alfa2+=PI;*/ vomiga2=-vomiga1*vab*cos(valfa1)/(vbc*cos(valfa2); vxc=(vab*cos(valfa1)+vbc*cos(valfa2)/2; vvc=(-vomiga1*vab*sin(valfa2-valfa1)/cos(valfa2)/10; vac=(-vab*vomiga1*vomiga1*cos(valfa1-valfa2)+vbc*vomiga2*vomiga2)/cos(valfa2)/50;vdraw_x()int i; setcolor(WHITE); line(0,vl,640,vl); line(vm,0,vm,480); line(360+vm,0,360+vm,480); line(vm,0,vm-8,20); line(vm,0,vm+8,20); line(640,vl,620,vl-8); line(640,vl,620,vl+8); for(i=vm;i=620;i+=30) line(i,vl,i,vl+6); vxxc=(int)(valfa+vm); if(vjust=1) vyxc=-(int)(vl-vxc); if(vjust=2) vyxc=-(int)(70-vxc); /*if(yxc64) yxc=yxc-64;*/ setcolor(RED); lineto(vxxc,vyxc);vdraw_v()vxvc=(int)(valfa+vm); vyvc=(int)(vl-vvc); setcolor(YELLOW); lineto(vxvc,vyvc);vdraw_a()vxac=(int)(valfa+vm); vyac=(int)(vl-vac); setcolor(GREEN); lineto(vxac,vyac);vchart()int graphdriver=VGA,graphmode=VGAHI; printf(Please Chose The 1:L1=150,L2=955.5,b=0, omiga1=50r/minn); printf( or 2:L1=101,L2=433,b=260, omigal=50r/minn); printf(HaHa,Which one do you chose? :-)n); scanf(%d,&vjust); if(vjust=1) vab=150;vbc=955.5;vb=0; if(vjust=2) vab=101;vbc=433;vb=260; initgraph(&graphdriver,&graphmode, ); moveto(vm,vl); setbkcolor(BLACK); valfa=0; do valfa1=valfa*PI/180; vset_c(); vdraw_x(); valfa=valfa+1; while(valfa=540); moveto(vm,vl); valfa=0; do valfa1=valfa*PI/180; vset_c(); vdraw_v(); valfa=valfa+1; while(valfa=540); moveto(vm,vl); valfa=0; do valfa1=valfa*PI/180; vset_c(); vdraw_a(); valfa=valfa+1; while(valfa360) _alfa=_alfa-360; _alfa1=PI*_alfa/180;void _drawlink()double l,i; xx2=(int)(_ab*cos(_alfa1)+xx1; yy2=yy1-(int)(_ab*sin(_alfa1); l=2*_ab*cos(_alfa1); xx3=(int)(l+sqrt(l*l-4*(_ab*_ab-_bc*_bc)/2)+xx1; setbkcolor(BLUE); setcolor(RED); setlinestyle(0,0,3); moveto(xx1,yy1); lineto(xx2,yy2); lineto(xx3,yy3); setcolor(15); setlinestyle(0,0,0); lin
收藏