信息论与编码课程设计及压片成形机课程设计_第1页
信息论与编码课程设计及压片成形机课程设计_第2页
信息论与编码课程设计及压片成形机课程设计_第3页
信息论与编码课程设计及压片成形机课程设计_第4页
信息论与编码课程设计及压片成形机课程设计_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-32-信息论与编码课程设计报告书学院:电气工程与自动化专业班级:指导老师:团队成员:本案作者:学号:完成日期:摘要信息是从人类出现以来就存在于这个世界上,人类社会的生存和发展都离不开信息的获取、传递、处理、再生、控制和处理。而信息论正是一门把信息作为研究对象,以揭示信息的本质特性和规律为基础,应用概率论、随即过程和数理统计等方法来研究信息的存储、传输、处理、控制、和利用等一般规律的学科。主要研究如何提高信息系统的可靠性、有效性、保密性和认证性,以使信息系统最优化。在信息论的指导下,信息技术得到飞速发展,这使得信息论渗透到自然科学和社会科学的所有领域,并且应用与众多领域:编码学、密码学与密码分析、数据压缩、数据传输、检测理论、估计理论等。信息论的主要基本理论包括:信息的定义和度量;各类离散信源和连续信源的信源熵;有记忆,无记忆离散和连续信道的信道容量,平均互信息;无失真信源编码相关理论。求离散性信源熵也是信息论课程实践学习中必须要经历,在了解常规的求解方式的同时,利用计算机语言进行实践编程。用预先规定的方法将文字、数字或其他对象编成数码,或将信息、数据转换成规定的电脉冲信号。编码在电子计算机、电视、遥控和通讯等方面广泛使用。其中哈夫曼编码有广泛的应用,通过本次实验,了解编码的具体过程,通过编程实现编码。本次实验所使用的机器语言均为C语言。关键字:信息论离散和连续信源熵哈夫曼编码C语言编程设计目录摘要 -1-第一章课程设计概述及意义 -3-第二章设计任务与要求 -3-1、设计目的 -3-1.1 -3-1.2 -3-1.3 -3-1.4 -4-1.5 -4-2.设计内容 -4-3.设计要求 -4-4.设计条件 -4-5.设计思路 -4-6.离散平稳信源熵求解说明 -5-7.哈夫曼编码编程方式说明 -5-第三章设计流程图 -6-1.信源熵编程计算设计流程图 -7-2.哈夫曼编码程序设计流程图 -8-3.软件介绍 -8-3.1VisualC++6.0简介 -8-3.2主要部分 -9-第三章程序运行及结果 -10-1.计算信源熵结构截图 -10-2.哈夫曼树编程截图结果 -11-3.设计内容举例结果分析 -11-第五章课程设计心得体会 -13-附录 -14-1.参考文献 -14-2.哈幅曼树调试程序 -14-3.信源熵计算调试程序 -19-第一章课程设计概述及意义本课程设计是在学习了《信息论与编码》和相关开发的软件课程后,让我们通过实际的操作来熟悉信源编码微机实现,培养我们能够独立的完成对相关课题或者项目的分析能力、设计能力和调试能力。本课程设计是衔接在C课程、数据结构课程设计之后的,运用程序思想来完成的,联系信息论与编码所学内容,要求有独立的操作界面。在这次的课程设计中,着重培养的是我们的自学能力,以及独立分析互联网上和图书馆里的各种资料,来丰富自己的知识并且提高对数学公式的计算机实现、VC++等软件的实际操作能力。通过这次的课程设计,能够使我们对已经学习过的信息论与编码课程的进一步的掌握,能够对知识进行最大程度的消化融汇。因此这次的课程设计对我们有着非常重要的意义。

本课程设计中用VC编写出基于visualstudio2010界面的简单软件以实现压缩信源熵求解及哈夫曼编码的目的。经过比较系统合理的编程操作,实现可视化的窗口以方便用户使用。通过简单校验确保信源正确性,保证软件的可靠性。最终将结果保存为文档方便记录编码结果。

通过让完成具体编码算法的程序设计和调试工作,达到提高编程能力和深刻理解编码理论及信源熵求解的目的。培养我们使用计算机和查阅参考资料的能力,提高我们的基本设计能力。培养了理论联系实际和独立思考的能力。并激发我们的实际开发创造的意识和能力。培养和提高我们的自学能力以及综合运用所学理论知识去分析解决实际问题的能力。第二章设计任务与要求1、设计目的1.1深刻理解信源熵的计算方法;1.2深刻理解信源编码的基本思想与目的;1.3理解哈夫曼编码方法的基本过程与特点;1.4提高综合运用所学理论知识独立分析和解决问题的能力;1.5提高使用C语言或其他语言进行编程的能力,以及visualstudio软件的应用能力。2.设计内容首先对拖入文件中的字符总个数进行统计,然后从文本头开始查找同一字符个数,并计算其概率最后由得出的字符概率求得信源熵假设已知一个信源的各符号概率,编写适当函数,对其进行哈夫曼编码,得出M进制码字,平均码长和编码效率,总结此编码方法的特点和应用。3.设计要求1、编写的函数要有通用性;2学生可独立完成,或组队共同完成。每队人数不多于4人。3、提交一份独立完成的课程设计报告(纸质和电子版),做5分钟PPT汇报,并演示程序。每队选择1人汇报和演示程序,其他人答辩。4、课程设计报告包括设计任务与要求、设计思路、设计流程图、程序运行及结果、心得体会、参考文献、附录(源程序)等内容。4.设计条件1、计算机、C语言或其他语言环境2、设计软件visualstudio20105.设计思路信源熵的定义:信源各个离散消息的自信息量的数学期望首先对拖入文件中的字符总个数进行统计,然后从文本头开始查找同一字符个数,并计算其概率,最后由得出的字符概率求得信源熵。假设每种字符在电文中出现的次数为Wi,编码长度为Li,电文中有n种字符,则电文编码总长度为(W1*L1)+(W2*L2)+…+(Wi*Li)。若将此对应到二叉树上,Wi为叶结点,Li为根结点到叶结点的路径长度。那么,(W1*L1)+(W2*L2)+…+(Wi*Li)恰好为二叉树上带权路径长度。因此,设计电文总长最短的二进制前缀编码,就是以n种字符出现的频率作权,构造一棵哈夫曼树6.离散平稳信源熵求解说明离散平稳信源也是一种非常重要的信源。不同时刻信源输出符号的概率分布完全相同,则称为一维离散平稳信源。二维离散平稳信源就是信源输出的随机序列…,X1,X2,…,Xi,…,满足其一维和二维概率分布与时间起点无关。这种各维联合概率分布均匀与时间起点无关的完全平稳信源称离散平稳信源。二维离散平稳信源的联和熵为:,此值表示原来信源X输出任意一对可能的消息的共熵,即描述信源X输出长度为2的平均不确定性,或所含的信息量,因此可用作为二维离散平稳信源的信息熵的近似值。在通信系统的各种信源中,离散随机信源是最基本的一种信源,信源输出是单个的符号的消息,并且消息之间是两两互不相容的。我们知道,事件发生的不确定性与事件发生的概率有关:事件的发生概率越小,不确定性就越大,事件发生的概率越大,不确定性就越小,对于发生概率为1的必然事件就不存在不确定性。设一离散信源的概率空间为:......即,如果知道已发生,则该事件所含有的信息量称自信息,表达式为:上面的自信息是指某一信源发出某一消息所含的信息量,但所发消息不同,它们所含信息量也就不同,所以自信息不能作为整个信源的信息测度,我们定义平均自信息量,即对每个事件各自所携带的信息量做一个加权平均,也称信息熵,表示如下:信息熵具有一些基本的性质,比如,对称性,确定性,非负性,扩展性,可加性等等。这里面有一个最大离散熵定理,表明:离散信源情况下,对于具有q个符号的离散信源,只有在q个信源符号等可能出现的情况下,信源熵才能达到最大值,这样也表明等概率分布信源的平均不确定性为最大。7.哈夫曼编码编程方式说明哈夫曼编码(HuffmanCoding)是一种编码方式,也是可变字长编码(VLC)的一种。这种方法完全依据字符出现的概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫作哈夫曼编码。对于M进制哈弗曼编码,为了提高编码效率,就要使长码的符号数量尽量少、概率尽量小,所以应使合并的信源符号位于缩减信源序列尽可能高的位置上,以减少再次合并的次数,充分利用短码。在这个信息量爆炸的时代,凡是能载荷一定信息量,且码字的平均长度最短,可分离的变长码的码字集合称为最佳变长码。为此,必须将概率大的信息符号编以短的码字,概率小的符号编以长的码字,使得平均码字最短。能获得最佳码的编码方法主要有:香农(Shannon)、费诺(Fano)、哈夫曼(Huffman)编码等。哈夫曼(Huffman)编码是一种常用的压缩编码方法,是Huffman于1952年为压缩文本文件建立的。它的基本原理是频繁使用的数据用较短的代码代替,较少使用的数据用较长的代码代替,每个数据的代码各不相同。哈夫曼压缩是个无损的压缩算法,一般用来压缩文本和程序文件。哈夫曼压缩属于可变代码长度算法一族。意思是个体符号用一个特定长度的位序列替代。因此,在文件中出现频率高的符号,使用短的位序列,而那些很少出现的符号,则用较长的位序列。哈夫曼编码是哈夫曼树的一个应用,是一种最优的前缀技术,然而其存在的不足却制约了它的直接应用。首先,其解码时间为O(lavg),其中lavg为码字的平均长度;其次,更为重要的是,解码器需要知道哈夫曼编码树的结构,因而编码器必须为解码器保存或传输哈夫曼编码树。对于小量数据的压缩而言,这是很大的开销。因而,应用哈夫曼编码的关键是如何降低哈夫曼编码树的存储空间。目前流行的很多压缩方法都是用了该技术,如 GZIB、ZLIB、PNC等。对于多进制哈夫曼编码,为了提高编码效率,就要是长码的符号数量尽量少、概率尽量小,所以信源符号数量最好满足n=(m-1)*k+r,其中m为进制数,k为缩减的次数。设计步骤如下:[1]将信源符号按概率从大到小的顺序排列,令p(x1)≥p(x2)≥…≥p(xn)[2]给两个概率最小的信源符号p(xn-1)和p(xn)各分配一个码位“0”和“1”,将这两个信源符号合并成一个新符号,并用这两个最小的概率之和作为新符号的概率,或者在新添加一个信源符号,令其概率为0,则个分配一个码位“0”、“1”和“2”,将其合并,结果得到一个只包含(n-1)个信源符号的新信源。称为信源的第一次缩减信源,用S1表示。[3]将缩减信源S1的符号仍按概率从大到小顺序排列,此后每次合并3个信源符号,得到只含(n-3)个符号的缩减信源S2。[4]重复上述步骤,直至最后,此时所剩符号的概率之和必为1。然后从最后一级缩减信源开始,依编码路径向前返回,就得到各信源符号所对应的码字。第三章设计流程图1.信源熵编程计算设计流程图2.哈夫曼编码程序设计流程图3.软件介绍3.1VisualC++6.0简介VisualC++6.0,简称VC或者VC6.0,是微软推出的一款C++编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。VisualC++是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出VisualC++1.0后,随着其新版本的不断问世,VisualC++已成为专业程序员进行软件开发的首选工具。VisualC++6.0由Microsoft开发,它不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrateddevelopmentenvironment,IDE)。VisualC++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导ClassWizard等开发工具。这些组件通过一个名为DeveloperStudio的组件集成为和谐的开发环境。Microsoft的主力软件产品。VisualC++是一个功能强大的可视化软件开发工具。VisualC++6.0以拥有“语法高亮”,自动编译功能以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。其编译及创建预编译头文件(stdafx.h)、最小重建功能及累加连结(link)著称。这些特征明显缩短程序编辑、编译及连结的时间花费,在大型软件计划上尤其显著。3.2主要部分[1]DeveloperStudio图1DeveloperStudio环境这是一个集成开发环境,我们日常工作的99%都是在它上面完成的,再加上它的标题赫然写着“MicrosoftVisualC++”,所以很多人理所当然的认为,那就是VisualC++了。其实不然,虽然DeveloperStudio提供了一个很好的编辑器和很多Wizard,但实际上它没有任何编译和链接程序的功能,真正完成这些工作的幕后英雄后面会介绍。我们也知道,DeveloperStudio并不是专门用于VC的,它也同样用于VB,VJ,VID等VisualStudio家族的其他同胞兄弟。所以不要把DeveloperStudio当成VisualC++,它充其量只是VisualC++的一个壳子而已。这一点请切记![2]MFC从理论上来讲,MFC也不是专用于VisualC++,BorlandC++,C++Builder和SymantecC++同样可以处理MFC。同时,用VisualC++编写代码也并不意味着一定要用MFC,只要愿意,用VisualC++来编写SDK程序,或者使用STL,ATL,一样没有限制。不过,VisualC++本来就是为MFC打造的,VisualC++中的许多特征和语言扩展也是为MFC而设计的,所以用VisualC++而不用MFC就等于抛弃了VisualC++中很大的一部分功能。但是,VisualC++也不等于MFC。[3]PlatformSDK这才是VisualC++和整个VisualStudio的精华和灵魂,虽然我们很少能直接接触到它。大致说来,PlatformSDK是以MicrosoftC/C++编译器为核心(不是VisualC++,看清楚了),配合MASM,辅以其他一些工具和文档资料。上面说到DeveloperStudio没有编译程序的功能,那么这项工作是由谁来完成的呢?是CL,是NMAKE,和其他许许多多命令行程序,这些我们看不到的程序才是构成VisualStudio的基石。第三章程序运行及结果1.计算信源熵结构截图2.哈夫曼树编程截图结果3.设计内容举例结果分析例:对如下单符号离散无记忆信源编三进制哈夫曼码。这里:m=3,n=8令k=3,m+k(m-1)=9,则s=9-n=9-8=1所以第一次取m-s=2个符号进行编码。由计算可得:平均码长为:(3.1)信息率为: (3.2)编码效率为: (3.3)可见:哈夫曼的编码效率相当高,对编码器的要求也简单得多。编码过程如下:表1哈夫曼编码信源符号概率缩减信源码字码长0.40.0901EQ00.22022012101.012010.181020.11120.11220.072120.062220.0520030.0420130001212102图2哈夫曼树 第五章课程设计心得体会此次课程设计,受益颇多。将书本上的理论知识应用到实例中,进一步掌握了信源熵与与哈夫曼编码的相关知识点,也更熟悉的掌握了C语言编码。在课程设计的过程中,也遇到了一些问题,但这也正是课程设计的目的所在,发现自身的不足。我们深刻意识到自己在学习中的弱点,同时也找到了克服这些弱点的方法,这是在此活动中得到的一笔很大的财富。在以后的时间中,我们应该利用更多的时间去上机实验,多编写程序,相信不久后我们的编程能力都会有很大的提高。同时也感谢老师给我们这次机会,发现自身存在的缺点与不足,从而在以后的大学生活中更好的提升和完善自我。附录1.参考文献[1]曹雪虹,张宗橙.信息论与编码.北京:清华大学出版社,2007.[2]王慧琴.数字图像处理.北京:北京邮电大学出版社,2007.[3]严蔚敏,吴伟民.数据结构(C语言版)。北京:清华大学出版社,2009.[4]贾宗璞,许合利.C语言程序设计:人民邮电出版社,2010.2.哈幅曼树调试程序#include<stdio.h>#include<stdlib.h>#include<string.h>#include<ctype.h>#include<math.h>#defineKongJian200typedefstructHafuman{ charZiMu; doubleweight; intparent, lchild, rchild;}HTNode,*HafumanTree;typedefchar**HafumanCode;voidinitial(HafumanTree&HT,intn){ for(inti=0;i<2*n-1;i++) { HT[i].lchild=0; HT[i].rchild=0; HT[i].parent=0; }}intinput(HafumanTree&HT,double*H){ printf("哈夫曼编码、信源熵及编码效率\n"); HT=(HafumanTree)malloc(KongJian*sizeof(HTNode)); if(HT==NULL) return0; inti=0; doublesum=0.0; for(sum=0.0;sum!=1.0;i++) { if(sum>1.0) printf("输入有错误,请关闭命令窗重新运行\n"); else printf("\n请输入第%d个符号:",i+1); scanf("%c",&HT[i].ZiMu); printf("\n请输入%c的概率:",(HT+i)->ZiMu); scanf("%lf",&HT[i].weight); sum+=(HT+i)->weight; *H=*H+(-log(HT[i].weight)*HT[i].weight)/log(2.0); HT[i].lchild=HT[i].rchild=i; } printf("\n实验结果如下:\n"); initial(HT,i); returni;}voidselect(HafumanTrees,intn,int*a,int*b){ doublemin=1.0; for(inti=0;i<n;i++) { if((min>(s+i)->weight)&&(s+i)->parent==0) { min=(s+i)->weight; *a=i; } } min=1.0; for(inti=0;i<n;i++) { if(i==*a) continue; if(min>(s+i)->weight&&(s+i)->parent==0) { min=(s+i)->weight; *b=i; } }}voidcreatHafumanTree(HafumanTree&HT,intn){ ints1=0, s2=0; for(inti=n;i<2*n-1;i++) { select(HT,i,&s1,&s2); HT[s1].parent=i; HT[s2].parent=i; HT[i].lchild=s1; HT[i].rchild=s2; HT[i].weight=HT[s1].weight+HT[s2].weight; }}intcmp(constvoid*a,constvoid*b){ return-1;}intcreatHafumanCode(HafumanTreeHT,HafumanCode&HC,intn,double*CL){ if((HC=(HafumanCode)malloc(n*sizeof(char*)))==NULL) return0; char*code=NULL; intnum_1=0, j=0, start=0, number=0; for(inti=0;i<n;i++) { if((code=(char*)malloc(n*sizeof(char)))==NULL) return0; start=0; num_1=HT[i].parent; j=i; while(num_1!=0) { if(HT[num_1].lchild==j) code[start++]='0'; else code[start++]='1'; number+=1; j=num_1; num_1=HT[j].parent; } qsort(code,start,sizeof(char),cmp); *(code+start)='\0'; HC[i]=code; } *CL=(double)number/(double)n;}voidprint(HafumanTreeHT,HafumanCodeHC,intn,doubleH,doubleCL){ for(inti=0;i<n;i++) { printf("\n%c的编码是:",HT[i].ZiMu); puts(HC[i]); } printf("\n信源熵是:%f.",H); printf("\n编码效率为:%f%%.",(H/CL)*100);}intmain(void){ HafumanTreestring=NULL; HafumanCodecode_string=NULL; doubleCL=0.0; doubleH=0.0; intlength=0; length=input(string,&H); creatHafumanTree(string,length); creatHafumanCode(string,code_string,length,&CL); print(string,code_string,length,H,CL); printf("\n\n本次试验成功!\n"); free(string); free(code_string); return0;}3.信源熵计算调试程序#include<stdio.h>#include<stdlib.h>#include<ctype.h>#include<math.h>intcheck(char*s);voidinitial(void);structShuju{ longintcishu; doublegl; chardata;}Jc[256];intmain(void){ FILE*fp=NULL; char*filename=NULL; if((filename=(char*)malloc(500*sizeof(char))) ==NULL) { return0; } do{ printf("请拖入一个以字母命名的文件:"); gets(filename); }while(!check(filename)); if((fp=fopen(filename,"r"))==NULL) {printf("文件名为:'filename'的文件不存在"); return0; fclose(fp); } printf("\n开始读入文件内容"); initial(); longintnumber=0L; doubleXys=0.0; charch='0'; while(!feof(fp)) { ch=fgetc(fp); if(ch<=255&&ch>=0) { ch=(ch<='Z'&&ch>='A')?(ch+32):ch; Jc[ch].cishu+=1; Jc[ch].data=ch; number+=1; } } for(inti=0;i<256;i++) { if(Jc[i].cishu==0) continue; Jc[i].gl=static_cast<double>(Jc[i].cishu)/static_cast<double>(number); Xys=Xys+(-log(Jc[i].gl)*Jc[i].gl)/log(2.0); printf("\n其中%c字符的个数为:%d,概率是:%4.5f。",Jc[i].data,Jc[i].cishu,Jc[i].gl); } printf("\n该信源的熵是:%.4f.",Xys); printf("\n本次试验正常运行\n"); fclose(fp); return0;}voidinitial(void){ for(inti=0;i<256;i++) { Jc[i].cishu=0; }}intcheck(char*s){ inti=0; while(*(s+i)!='\0') i++; if(*(s+i-4)=='.' &&*(s+i-3)=='t' &&*(s+i-2)=='x' &&*(s+i-1)=='t') return1; else { return0; }}江西农业大学工学院《机械原理》课程设计学生姓名:

专业及班级:

学号:

设计名称:

20-09-05目录1.设计题目……………32.工作原理及工艺动作过程…………3设计原始数据及设计要求…………4原动机构、传动机构和执行机构的确定…………………5动作关系……………56.功能分解……………67.设计方案图拟………78.设计方案的评比和选择……………129.运动方案拟定及运动循环…………1410.上冲头、下冲头设计………………1511.心得体会……………1812.参考书目……………191、设计题目设计自动压片成形机,将具有一定湿度的粉状原料(如陶瓷干粉、药粉)定量送入压形位置,经压制成形后脱离该位置。机器的整个工作过程(送料、压形、脱离)均自动完成。该机器可以压制陶瓷圆形片坯、药剂(片)等。2.工作原理及工艺动作过程自动压片机的功能是将不加粘结剂的干粉料(如圆形方糖、药粉)定量送入压形置压制成φ×h圆型片坯,经压制成形后脱离该位置。机器的整个工作过程(送料、压形脱离)均自动完成。该机器可以压制圆形片坯、药剂(片)等。其工艺动作的分解如图1图1工艺动作分解1)干粉料均匀筛入圆筒形型腔(图1.1)。2)下冲头下沉,预防上冲头进入型腔时粉料扑出(图1.3)。3)上、下冲头同时加压,并保持一段时间(图1.4)。4)上冲头退出,下冲头随后顶出压好的片坯(图1.5)。5)料筛推出片坯(图1.6)。3.设计原始数据及设计要求图3、压片成形机设计数据方案号电动机转速r/min生产率片/min成品尺寸(Φ×d)mm,mm冲头压力kgδmkgmkgA145010100×6015,0000.10125B9701560×3510,0000.08104C9702040×2010,0000.0593

上冲头、下冲头、送料筛的设计要求是:1).上冲头完成往复直移运动(铅锤上下),下移至终点后有短时间的停歇,起保压作用,保压时间为0.4秒左右。因冲头上升后要留有料筛进入的空间,故冲头行程为90~100mm。因冲头压力较大,因而加压机构应有增力功能(如图3.2a)。2).下冲头先下沉3mm,然后上升8mm,加压后停歇保压,继而上升16mm,将成型片坯顶到与台面平齐后停歇,待料筛将片坯推离冲头后,再下移21mm,到待料位置(如图3.2b)。3).料筛在模具型腔上方往复振动筛料,然后向左退回。待批料成型并被推出型腔后,料筛在台面上右移约45~50mm,推卸片坯(如图3.2c)。图3.2原动机构、传动机构和执行机构的确定4.1原动机选择电机的容量主要由电动机运行时的发热情况而定,而发热又与其工作情况而定。工作机所需工作功率Pw,应由工作阻力和运动参数计算得来的,可按下式计算:

Pw=Tn/9550

Kw

其中:T——工作机的阻力矩,N·mm;

n--工作机的转速r/min;

经过综合考虑决定选用额定转数970r/min的B方案电动机4.2传动机构选取额定转速为970r/min1.确定总传动比电动机转速n=970r/min凸轮转速nI=20r/mini总=n/nI=970/20=48.52.传动比的分配将总传动比按各级传动进行分配i总=i1*i2*i3*i4……in(式中i1,i2,i3,i4……in为各级传动的传动比)13876传动系统采用四级减速机构,第一级为带传动,第二级为减速器传动,第三级为带传动,第四级为带传动。按前述传动比分配原则,为使传动构件获得较小尺寸,结构紧凑,可采用传动比“先小后大”原则。因此初选i1=1.6,i2=30。第二级减速器内部齿轮结构如下图所示。13876313H76548312313H7654831222图中各齿轮数位Z1=30Z2=20Z3=70Z4=42Z5=20Z7=20Z8=42从1齿轮输入600r/min,从H行星架输出20r/min,则i=30,即W1/WH=30,即当W1=30时,Va=W1R1=900W1=1,VR=W1*OR=50对于2行星轮,2VR=VP-VQ=100,则VP=1000,W3=VP/R3=1000/70=100/7当W=100/7,W=-30时,W=1,现以1齿轮为主动,3齿轮为从动,添加右侧轮系,使i=30*7/100=21:10,即Z小:Z大=20:42调整方向增加介轮Z6=22根据设计要求,上冲头,下冲头和送料筛同时进行,所以第三级和第四级的传动比为1。3.各级传动比的分配表传动比分配i1i2i3i41.63011根据设计要求、工艺性能、结构要求和总传动比等条件选择传动系统类型,选定带传动和齿轮传动4.3执行机构执行机构分三部分:①实现上冲头上下运动的主加压机构;②实现下冲头上下运动的辅助加压机构;③实现料筛左右运动的上、下料机构。各执行机构必须能满足工艺上的运动要求,可以有多种不同型式的机构供选用。形态学矩阵功能元解上冲头机构齿轮机构A1连杆机构A2凸轮机构A3下冲头机构曲线槽导杆机构B1凸轮机构B2连杆机构B3送料机构蜗轮蜗杆机构C1凸轮机构C2曲柄滑块机构C3系统解的可能方案数:F=3×3×3=27其中列出较为理想的方法:A2+B2+C25.动作关系上冲头、下冲头与送料筛的动作关系见表4。表4动作关系上冲头进退送料筛退近休进远休下冲头退近休进远休6.功能分解及机构选用该干粉压片机通过一定的机械能把原料(干粉)压制成成品,其功能分解如下图设计干粉压片机,其总功能可以分解成以下几个工艺动作:送料机构:为间歇直线运动,这一动作可以通过凸轮完成(2)筛料:要求筛子往复震动,这一动作可以通过凸轮完成(3)推出片坯:下冲头上升推出成型的片坯(4)送成品:通过凸轮推动筛子来将成型的片坯挤到滑道(5)上冲头往复直线运动,最好实行快速返回等特性。(6)下冲头间歇直线运动,这一动作可以通过凸轮完成。7.设计方案图拟7.1上冲头运动方案一:涡轮蜗杆和曲柄导杆滑块机构方案二:CCABDA,B,C,D四个杆件,D上固连上冲头方案三:1121为涡轮蜗杆,2为偏置曲柄滑块机构。7.2下冲头运动凸轮机构7.3料筛运动112(筛料处有一个向凸轮的力)凸轮的一边制造成锯齿形,在筛子上施加一个适当大小的力,方向指向凸轮,使筛子可以来回移动,凸轮的结构使得筛子在行进过程中会出现停顿的情况,使其符合要求8.设计方案的评比和选择上冲头方案方案一:方案一涡轮蜗杆和曲柄导杆滑块机构,满足上冲头的设计要求,但较复杂,运动的稳定性不好,造价较高。承载能力一般传动平稳噪音小但下压力不足,经济性一般,运动不易控制,传动性不佳,机械生产要求高。方案二:方案二为一曲柄摇杆机构,由曲柄为主动件带动摇杆摇动以及滑块上下运动,应用范围广可调性高运转精度较高计算自由度:S=3n-2PL-PH=3*3-2*4=1可实现运动需要。具有很好的传动性,结构简单经济性好工业制造较为简单,维修跟换方便,可大批量制造生产,暂为最佳选择。方案三:方案三机构简单,产生的压力较大,满足上冲头的增力要求,传动比较平稳、准确,但是成本较高,效率比较低。综上所述,在三个方案中,方案二为最佳方案。下冲头方案该方案为凸轮机构,下冲头的设计要求有三个休止阶段,即:药粉进入型腔后下冲头下降3mm并休止,压制完成后的休止和将药片推出型腔时的休止。选用凸轮机构就能很好地实现此运动要求,而且设计方便,容易实现,但是机构的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论