j2ee网上考试系统设计报告.doc_第1页
j2ee网上考试系统设计报告.doc_第2页
j2ee网上考试系统设计报告.doc_第3页
j2ee网上考试系统设计报告.doc_第4页
j2ee网上考试系统设计报告.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

上海电力学院Java EE课程大作业题目 网上考试系统的设计与实现 学号 20083335 课号 姓名 周航 班级 2008221 院系 计信学院 专业 软件工程 2010-12-20目录第一章引言31.1开发简介3第二章 需求分析与系统设计42.1系统背景介绍42.2需求分析52.2.1角色说明72.2.2主要过程72.3实体关系图(ER图设计)82.4数据库的实现82.4.1数据库的简介82.4.2数据库连接的方式82.4.3数据库具体实现9第三章 系统详细设计123.1系统结构设计123.2功能模块设计123.2.1登录模块设计133.2.2教师题管理模块的设计133.3.3教师试卷管理模块153.3.4 考生参加考试模块设计153.3.5成绩查询模块设计17第四张 总结18参考文献18第一章 引言1.1开发简介 J2EE开发技术是Java开发中综合性最强,Java编程应用最为广泛的一项,作为企业级的开发框架,JavaEE除了有SDK基本的包支持,还有各种基于服务器,数据库等开发的工具包,在JavaEE开发中,这些工具包很大程度上简化了开发复杂项目的开发流程。提供了很多值得借鉴的可复用的开发模式。随着网络发展的日益普及化,网站服务越发朝多样化发展,许多原来要用人工进行的作业可以由计算机执行,并通过网络的途径共享结果数据。而且随着结构化数据库的日益发展完善,网络服务器所能接受的数据也更加多样化。网上考试系统的设计就是基于JavaWeb编程,JavaBean开发,数据库技术基础上通过在服务器端连接运行数据库,客户端进行相应操作,实现将教师的登录系统,试题管理,组卷等工作以及将学生的登录验证,参加测试,提交试卷之后系统根据教师的设置得出考生的平均分,最后考生可以登录并查询自己的成绩等一系列操作在该系统内完成。通过这个系统的试验,可以初步形成一个网上考试系统的简单架构和开发思路,网上考试系统取代了传统的考试要用试卷实体进行考试,考试后人工的批阅试卷的过程,不仅减少了人为的劳动,也降低了以往阅卷过程中由于批卷人疏漏造成的出错的可能性。尽管网上考试系统相比传统考试拥有这些技术和准确性上的优势,但传统的考试由于可以做到题型多变,答案不唯一,传统的考试批阅试卷的过程中都会遇到各种问题,比如标准答案的争议,有时一个简单的填空题,与标准答案稍有差异的答案也可以算是正确的,目前网上考试系统比较难以实现灵活性上的功能。尤其是本文档中的网上考试系统,距离达到其实用功能还有待完善。有了将尚未普及的数据库操作,网页参数传递等技术转化为可视化,较容易理解的网页客户端操作页面的开发思路,则为今后该方向的服务系统的开发奠定了技术上的底层基础。第二章 需求分析与系统设计2.1系统背景介绍网上考试系统的开发目的是通过将网络编程技术和数据库连接技术融合起来,实现将考试的流程简化,只需考生通过自己的用户名(学号)和密码实现验证参加考试,教师的组卷则是通过登录验证后的网页客户端文本输入实现试题的添加修改删除等操作,提高考试的效率,和生成成绩的速度,一定程度上解决了以往考试过后一段时间后才能知道成绩的问题。2.2需求分析通过对网上考试系统的大致了解和题目的说明,经过概括总结得出如下的系统功能流程图:如图2.1图2.1系统实现的主要功能有:(1) 教师的题库查询操作,可以从数据库中读出现有的学科题库中的题目(2) 教师的修改题库题目操作,可以从界面选择编辑题目,做好修改后提交给服务器,将数据库中的题库题目更新修改(3) 教师的试卷管理功能,可以从数据库中读取已经创建的试卷,可以在页面输入文本提交后创建新的试卷,或删除已存在的试卷。(4) 教师的试卷组题功能,在已有试卷上增加题目,删除题目。(修改题目要在题库中统一修改)(5) 考生的参加考试的功能,考生登录后可以选择参加考试功能,在选择界面中选择要参加的考试的科目,以及该科目下具体的试卷名称。(6) 考生答题完毕后系统会根据提交的答案得出考生分数,考生可在操作界面中选择查询分数这一功能查询考试分数。(只显示该考生自己的分数)(7) 教师与学生都可以通过登录验证后,修改登录的密码,本示例系统的教师登录密码1234,学生登录密码与学号相同,可修改。本学期学习的一门基于面向对象语言开发技术的建模语言,UML建模语言, (全称Unified Modeling Language统一建模语言),该语言主要用于程序开发初期的总体设计,通过该语言的描述和图形化的表达方式,可以将较复杂的问题转化成可视化的详细的开发指导。UML常用建模图形包括用例图,类图,状态机图,活动图,交互纵览图,通讯图,组件图等。 用例图描述了系统中的用户,和系统之间的用例关系,以及系统内用例之间的关联,下图为系统总的用例图。 图2.2 学生的用例图如下(图2.3) 图2.3 教师的用例如下:(图2.4) 图2.4 2.2.1角色说明 考生操作:考生登录后可以查看当前已存在的学科的试卷并参加考试,可以修改密码,要输入两次新密码以确认,下次登录后奏效,可以查看已经参加完的科目的考试成绩。主要是从数据库中读取数据(题目的信息)并将页面中的信息发送到服务器通过Servlet调用数据库中的数据比较得出分数,并将分数结果存放到数据库中,以便下次查询成绩时读取。 教师操作:教师登录后也可以修改密码,同考生一样,输入两次确认密码,然后通过管理本学科试题库管理试题,在管理试卷时可以在试卷上增删题库中的题目。所有操作都在页面输入提交后执行。 2.2.2主要过程 考生登录后选择参加考试,点击相应的链接按钮后可以浏览该试卷上的试题内容和备选答案,并在每道题下将自己的答案选择好,答题完毕后按提交按钮,将会把本页的答案提交到相应的Servlet上调用逻辑层的方法比较核对得出分数,将分数添加到数据库中。 教师登陆后可以管理试卷,管理试题,试题修改后,试卷上的试题也会相应的做出修改。用到了数据库的增删改查。 关于权限:考生有权限参加相应试题号的试卷的考试,但是无法查看学科试题库(遵循实际情况),考生参加考试完毕后有权限查阅自己的程序,但无法得知别的考生的成绩(通过设置网页的参数传值)没有设置教师查看考生成绩的权限。2.3 实体关系图(ER图设计)一、 各个实体和属性ER图2.4数据库的实现2.4.1数据库的简介该系统数据库采用的MySQL数据库,该数据库操作类似于控制台操作,主要优点是占用空间小,维护方便。数据库的操作语句是常见的结构化查询语言,作为j2ee开发的常用数据库,该数据库具有连接步骤简便,运行稳定等特点。2.4.2数据库连接的方式该系统数据库连接方式采用Hibernate3.1开源架构连接,该连接方式的优点是可以根据需要自动生成数据表的映射文件并管理表之间的关联关系,这一有点弥补了关系型数据库在面向对象编程结合时的差异与不便。具体连接步骤略。以下是Hibernate数据库连接后采用逆向工程生成的工程Bean文件结构:外键关联配置在xml文件中2.4.3 数据库具体实现/教工表create table Teachers( TeacherID char(8) primary key, Name varchar(10), Password varchar(20), Course varchar(20) ); insert into Teachers values(20100001,李强,1234,高数); /代表该学科的缩写HMinsert into Teachers values(20100002,王峰,1234,线代); LMinsert into Teachers values(20100003,张华,1234,网络); NTinsert into Teachers values(20100004,赵立,1234,J2me); JMinsert into Teachers values(20100005,郭明,1234,J2ee); JEinsert into Teachers values(20100006,韩络,1234,英语); ENinsert into Teachers values(20100007,周志,1234,编译原理); CTinsert into Teachers values(20100008,戴艳,1234,数据库); DBinsert into Teachers values(20100009,安飞,1234,操作系统); OSinsert into Teachers values(20100010,陈哲,1234,软件工程); SE/考生表create table Students( Sno char(8) primary key not null, Sname varchar(10), Password varchar(20) );insert into Students values(20101000,杨尘,5678);insert into Students values(20101001,赵普,5678);insert into Students values(20101002,刘文,5678);insert into Students values(20101003,沈朗,5678);insert into Students values(20101004,华凌,5678);insert into Students values(20101005,白卫,5678);insert into Students values(20101006,张华,5678);insert into Students values(20101007,李明,5678);insert into Students values(20101008,陆平,5678);insert into Students values(20101009,林武,5678);insert into Students values(20101010,孙凌,5678);/数据库添加外键参考alter table Emp add ConstraintForeign Key (empdeptNo) references Dept(departmentId); /给已存在的表定义外键方法/表设计:关于试卷,分为试题表(Items)和试卷表(Papers)试题表中的一个试题只能属于一个试卷,一个试卷则包含多个试题。试卷表与试题表两个表为一对多的关系,外键则为PaperNo,Papers中的主键,Items中的非主键(但是不能为空)。Items的主键ItemNo的生成方式采用自动分配方式(由数据库提供)Papers的主键PaperNo的生成方式采用手动分配方式(便于管理,先添加试卷,再添加试题)/试题表 其中,ItemContent是题干,ItemOptionA到ItemOptionD为四个选项所代表的答案的内容(主要用于向考生展示)ItemAnswer为正确答案所代表的字母(用于核对出最终得分)create table Items( ItemNo int not null primary key auto_increment, ItemContent varchar(200), ItemOptionA varchar(20), ItemOptionB varchar(20), ItemOptionC varchar(20), ItemOptionD varchar(20), ItemAnswer varchar(4), PaperNo varchar(10) not null);/试卷表 试卷表首先分为若干个学科,每个老师都有一个对应的学科,则PaperNo主键的手动分配方式可以满足这一要求,在PaperNo的命名上先加上该学科代表的缩略字母。create table Papers( PaperNo varchar(10) primary key not null, PaperName varchar(20);/为各个学科添加题库元祖(此操作预先在后台做好,以便前台添加。)insert into Papers values(ENbase,学科题库);insert into Papers values(AMbase,学科题库);insert into Papers values(LMbase,学科题库);insert into Papers values(NTbase,学科题库);insert into Papers values(JMbase,学科题库);insert into Papers values(JEbase,学科题库);insert into Papers values(CTbase,学科题库);insert into Papers values(DBbase,学科题库);insert into Papers values(OSbase,学科题库);insert into Papers values(SEbase,学科题库);最后定义好外键:alter table Items add (constraint FK_ITP Foreign key(PaperNo) references Papers(PaperNo);在定义映射文件时,选择好相应的映射关系。/成绩表学生参加考试,答题完毕提交给服务器后,服务器要将考生的答案与数据库习题表中的标准答案核对,得出该考生的分数,并将分数添加到这个成绩表中。所以成绩表将由两个主键组成,即考生的学号,成绩的试卷编号。也是表的两个外键,另外的核心属性是考试成绩,和考试的科目,考试科目由试卷编号推算,考试成绩由比较核对得出。表的定义如下:create table StuCredits( Sno char(8) not null, PaperNo varchar(10) not null, Grade tinyint check (grade=0 AND grade=100), Foreign key(Sno) references Students(Sno), Foreign key(PaperNo) references Papers(PaperNo);第三章 系统详细设计 3.1系统结构设计 系统结构图如下图3.1所示: 3.2功能模块设计本系统主要分5个模块,即用户登录管理模块(包括修改密码),教师题管理模块,试卷管理模块,考生的参加考试模块,成绩查询模块。Jsp文件主要是编写用户的操作页面或调用一些dao方法,bean文件夹下放的是数据表的映射文件,(由Hibernate逆向工程自动生成)Servlet主要用于接收来自客户端的各种请求和参数,并调用逻辑层的方法将数据加入数据库,tool包内只写了两个类,用来将教师的科目汉字全称与英文缩写相互转化用。3.2.1登录模块设计登录模块的设计较为平常,采用MVC模式,用Form表单形式将信息提交给Servlet,Servlet调用dao包中的validate方法实现验证功能,Dao包中的validate函数方法字段:public boolean valiStu(String sno,String password)boolean flag=false;Session s=HibernateSessionFactory.getSession();List list=s.createQuery(from Student stu where stu.sno=+sno+ and stu.password+=+password+).list();if(list.size()0)flag=true;return flag;验证教师的代码原理相同。用户登录成功后会有欢迎提示,提示中会显示该用户的姓名信息,这一设计是参见了学校的教学管理系统登录后会显示学生的姓名:相关代码:StudentDao sd=new StudentDao();Student stu=sd.queryStudentByID(sno); out.println(+stu.getSname()+);用户登录后可以修改密码,修改密码是将新密码和要修改密码的用户名传值给Servlet,再由Servlet调用dao中的editPassword()方法。方法体:Session s=HibernateSessionFactory.getSession();Transaction tran=s.beginTransaction();Student stu=(Student)s.get(Student.class, sno);stu.setPassword(newpassword);s.saveOrUpdate(stu);mit();修改密码时,需要两次输入以确定输入正确,两次输入值相同则修改成功。3.2.2教师题管理模块的设计教师登陆后,可以点击管理试题的链接进入管理试题页面,该页面显示的是目前该学科题库内所包含的题目,教师可以在该页面直接添加新题或修改已有的题目,也可以删除不需要的题目。试题管理中的页面设计采用了table中嵌套form的方法,以便响应不同的请求做出不同的操作。为了美观,Table的样式也是采用实线型边框样式。题管理模块主要用到了ItemDao类中的数据库操作方法,AddItem,,deleteItem,editItem方法,除此之外还有另一个模块试卷管理模块要用到的queryItem等,该Jsp发送请求的Servlet主要调用了ItemDao这个重要类的函数。该Jsp页面部分代码:ItemDao id=new ItemDao(); List list=id.queryAllItemsByCourse(cor);for(int i=0;ilist.size();i+) out.println(题干:+list.get(i).getItemContent()+选项A:+list.get(i).getItemOptionA() +选项B:+list.get(i).getItemOptionB()+选项C:+list.get(i).getItemOptionC() +选项D:+list.get(i).getItemOptionD()+答案:+list.get(i).getItemAnswer()+ 删除该题编辑该题); 以下则是添加新试题的部分,添加新试题是在Item表中添加对应Paper为学科题库的Item,因为在设计表时,Paper这个外键属性设置不能为空,且要在试卷查询时和其他试卷分开,所以题库的PaperNo属性设置为课程号+“base”out.println(试题内容: + +选项A:选项B: +选项C:选项D:+ 正确答案:);3.3.3教师试卷管理模块试卷管理模块先通过调用ItemDao中的QueryByPaper的方法,查询当前试卷所对应的试卷号下的题目,并根据该试卷的试题号的前两位(由程序自动生成的,在教师添加试卷的时候,试卷号只需输入特定的不重复字符串即可)决定该试卷的科目,确定科目后,调用QueryItemByCourse方法查询该学科题库内所有的试题,并除去该试卷上已存在的试题,在页面上显示该试卷可添加的试题,这样一来就避免了比如数学试卷上可以加英语题的非正常情况产生。关于在试卷上增加题目,则是在PaperNo对应的Paper中的外键关联属性Set中添加Item这个元素。(Set由Hibernate外键关联逆向工程自动生成)Dao包中ItemDao类内试卷可添加试题部分的代码:ArrayList list=new ArrayList();ArrayList clist=new ArrayList();Session s=HibernateSessionFactory.getSession();Paper p=(Paper)s.createQuery(from Paper p where p.paperNo=+course+base).list().get(0);Set set=p.getItems();Iterator it=set.iterator();while(it.hasNext()list.add(it.next();Paper pc=(Paper)s.createQuery(from Paper paper where paper.paperNo=+paperNo+).list().get(0);Set Cset=pc.getItems();Iterator ir=Cset.iterator();while(ir.hasNext()clist.add(ir.next();for(int i=0;iclist.size();i+)if(list.contains(clist.get(i)list.remove(clist.get(i);return list;该Jsp页面的设计类似于题管理模块的页面设计,table中嵌套Form来提交相应的不同请求。3.3.4 考生参加考试模块设计有了之前查询并前台显示试卷内容的基础,考生参加考试的页面设计也就容易很多了,主要是将相应的list中的Item元素遍历一遍,在遍历的同时,编排好试题的排布方式,即先是题干,接下来换行,每一行显示一个备选答案项,在试题下方有选择的下拉选框选择相应的试题答案项。关键则是考生点击了提交按钮之后,客户端发送数据到Servlet,Servlet如何处理发来的答案,并将该答案与其数据库中相应的题目的答案比较核对得出该份考卷的分数,并根据传过来的学号和试卷号参数确定学生以及这一张试卷的科目,并把成绩输入到学生成绩表中。其中遇到了一个非常容易忽略的问题,就是动态的参数名实现动态传参的问题,因为服务器端不知道这张试卷上有多少道题,每道题都有一个Select标签提交参数项,服务器端也不知道哪道题对应哪一个Select传来的参数,这样一来比较答案得出分数将变得非常的困难,所以我在Jsp页面的设计上,用到了如下的编码技巧,动态参数名设置:out.println(您的答案:); 这一行代码最为关键,(i+1)这一处非常容易出错,因为遍历list的时候要从0开始,所以在考生答题页面显示题号时根据人的习惯应该把i+1,而且为了Servlet中处理的习惯方便一点,把i+1也是十分必要的,但是如果没有外面的括号,那name的值传递的时候,是以字符串传递的,程序将会理解成该题的parameter属性名是“i1”比如i=0的时候本来要传1,结果变成传了01,要传2,结果传的是11,在Servlet中接收也接收不到参数值,造成无法比较。这个错误是我在计算分数功能失败,经多次调试后改正的。Servlet中的计算分数部分代码:Set set=pd.queryItemsByPaper(pno);ArrayList list=new ArrayList();ArrayList reqlist=new ArrayList();Iterator it=set.iterator();while(it.hasNext()Item item=(Item)it.next();list.add(item);for(int i=1;i=list.size();i+)String reqAs=req.getParameter(Q+i); /接收相应的值。reqlist.add(reqAs);for(int i=0;ireqlist.size();i+)if(reqlist.get(i).equals(list.get(i).getItemAnswer()sum=sum+1;3.3.5 成绩查询模块设计在核对考生答案得出分数之后,调用StudentDao类中的AddCredit方法将这一分数记录添加到考生成绩表中因为数据表中的Grade属性是tinyint,对应Java中的short类型数据,所以在计算完分数传递值的时候一定要注意转化,否则将不能插入数据库,而在转化之前要注意,如果考生没有答对所有题,那么考生答对题的数目除以总题数将会是小数,而小数转化成整数则会为0,这时再乘100还是零,这样会造成考生只有两种可能,要么满分要么零分的错误结果。同样经过多次调试修改后成功,代码如下:float all=(float)list.size(); float amount=(sum/all)*100;int credit=(int)amount; String credits=String.valueOf(credit); StudentDao sd=new StudentDao();sd.addCredit(pno, sno, credits);一定要用小数得出考生准确率,再乘100总分得该考生分数。StudentDao类中的添加成绩的方法:Short grade=Short.parseShort(credit);Session s=HibernateSessionFactory.getSession();Transaction tran=s.beginTransaction();Student stu=(Student)s.get(Student.class, sno);Paper paper=(Paper)s.get(Paper.class, pno);StuCredit sc=new StuCredit();StuCreditId sci=new StuCreditId(stu,paper,grade);sc.setId(sci); Set set=stu.getStuCredits();set.add(sc); stu.setStuCredits(set);s.saveOrUpdate(stu); mit();学生查询成绩的方法:Session s=HibernateSessionFactory.getSession(); List list= s.createQuery(from StuCredit sc where sc.student.sno=+sno).list(); return list;得到该考生学号对应的StuCredit表中的所有元祖。最后在设计查询分数页面时,因为考生要看的是哪一科多少分,而不是哪一个试卷编号的试卷多少分,所以要有一个将试卷编号转换成科目的手段,这就用到了程序自动添加的前两位学科缩写,通过只取编号前两位(subString方法)判断出科目(tool工具中的静态Revert方法)显示出来,该部分的代码如下:out.println(科目:+Revert.revert(list.get(i).getPaper().getPaperNo().substring(0,2)+分数:+list.get(i).getId().getGrade()+);第四张 总结本次大作业做的这个网上考试系统虽然功能上还有很多不健全的地方,比如考试计时功能,多题型多选判断等功能,而且由于设计过程中问题太多,页面设计的投入非常有限,而且网页之间要传递的参数太多,由于设计模式的欠考虑,经常要为网页间的连通性做很大修改。到目前该系统的实现过程总体上感觉并没有想象中的容易,从数据库查询登录验证到教师的组题功能,到学生考生交卷自动评分,通过各种方法,基本上都是在页面打印各种参数,调试了很久才通过。通过这次大作业我学会了很多,也很清楚的认识到,学好一个技巧不难,理解一个开发复用机制也可以在短时间内完成,但如果将各个方面的技术融合起来做出一个功能比较多样的程序需要很多时间和精力。这个系统的开发所用到的技术还只是局限于JavaBean,Hibernate,MVC架构,由于这学期相关开发知识,框架常识和原理掌握的不够全面扎实,许多进度稍后的方法模式都没有用到。经过这一个学期仅30多个课时的学习,只是初步了解了J2EE开发的技术思路和惯用模式,还是远远不够的,j2ee作为一个市场前景非常广阔的基于BS结构开发模式的开发技术,很有必要在以后的学习中不断深入研究。参考文献1UML建模图解教程 周力 人民邮电出版社2软件工程实践教程 刘冰等 机械工业出版社3我的J2EE成功之路 郭峰 电子工业出版社4教材44参考:毕业论文(设计)工作记录及成绩评定册题 目: 学生姓名: 学 号: 专 业: 班 级: 指 导 教 师: 职称: 助理指导教师: 职称: 年 月 日实验中心制使 用 说 明一、此册中各项内容为对学生毕业论文(设计)的工作和成绩评定记录,请各环节记录人用黑色或蓝色钢笔(签字笔)认真填写(建议填写前先写出相应草稿,以避免填错),并妥善保存。二、此册于学院组织对各专业题目审查完成后,各教研室汇编选题指南,经学生自由选题后,由实验中心组织发给学生。三、学生如实填好本册封面上的各项内容和选题审批表的相应内容,经指导教师和学院领导小组批准后,交指导教师;指导老师填好毕业论文(设计)任务书的各项内容,经教研室审核后交学生签名确认其毕业论文(设计)工作任务。四、学生在指导老师的指导下填好毕业论文(设计)开题报告各项内容,由指导教师和教研室审核通过后,确定其开题,并将此册交指导老师保存。五、指导老师原则上每周至少保证一次对学生的指导,如实按时填好毕业论文(设计)指导教师工作记录,并请学生签字确认。六、中期检查时,指导老师将此册交学生填写前期工作小结,指导教师对其任务完成情况进行评价,学院中期检查领导小组对师生中期工作进行核查,并对未完成者提出整改意见,后将此册交指导老师保存。七、毕业论文(设计)定稿后,根据学院工作安排,学生把论文(打印件)交指导老师评阅。指导老师应认真按毕业论文(设计)指导教师成绩评审表对学生的论文进行评审并写出评语,然后把论文和此册一同交教研室。八、教研室将学生的论文和此册分别交两位评阅人评阅后交回教研室保存。九、学院答辩委员会审核学生答辩资格,确定答辩学生名单,把具有答辩资格学生的论文连同此册交各答辩小组。十、学生答辩后由答辩小组记录人填好毕业论文(设计)答辩记录表中各项内容,然后把学生的论文和此册一同交所在答辩小组,答辩小组对其答辩进行评审并填写评语后交教研室。十一、学院答辩委员会进行成绩总评定,填好毕业论文(设计)成绩评定表中各项内容,然后把论文(印刷版和电子版(另传)和此册等资料装入专用档案袋中,教教研室后由实验中心统一保存。目 录1毕业论文(设计)选题审批表2. 毕业论文(设计)任务书3毕业论文(设计)开题报告4. 学生毕业论文(设计)题目更改申请表5毕业论文(设计)指导老师工作记录6毕业论文(设计)中期检查记录7毕业论文(设计)指导教师成绩评审表8毕业论文(设计)评阅人成绩评审表9. 毕业论文(设计)答辩申请表10毕业论文(设计)答辩记录表11毕业论文(设计)答辩成绩评审表12毕业论文(设计)成绩评定表毕业设计(论文)选题审批表题目名称 基于单片机的超声波测距题目性质工程设计理论研究实验研究计算机软件综合论文其它题目来源科研题目 生产现场教学 其它自拟题目选题理由:由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,精度也能达到使用要求,超声波测距应用于各种工业领域,如工业自动控制,建筑工程测量和机器人视觉识别等方面。超声波作为一种检测技术,采用的是非接触式测量,由于它具有不受外界因素影响,对环境有一定的适应能力,且操作简单、测量精度高等优点而被广泛应用。这些特点可使测量仪器不受被测介质的影响,大大解决了传统测量仪器存在的问题,比如,在粉尘多情况下对人引起的身体接触伤害,腐蚀性质的被测物对测量仪器腐蚀,触电接触不良造成的误测等。此外该技术对被测元件无磨损,使测量仪器牢固耐用,使用寿命加长,而且还降低了能量耗损,节省人力和劳动的强度。因此,利用超声波检测既迅速、方便、计算简单,又易于实时控制,在测量精度方面能达到工业实用的要求。 指导教师意见: 签名: 年 月 日院(系)领导小组意见: 签名: 年 月 日注:此表由学生填写毕业论文(设计)任务书1、毕业论文(设计)应达到的目的:(1)能对学生在学期间所学知识的检验与总结,培养和提高学生独立分析问题和解决问题的能力,使学生受到科学研究、工程设计和撰写技术报告等方面的基本训练。(2)提高学生对工作认真负责、一丝不苟,对事物能潜心观察、用于开拓、用于实践的基本素质;(3)培养学生综合运用所学知识,结合实际独立完成课题的工作能力。(4)对学生的知识面、掌握知识的深度、运用理论结合实际去处理问题的能力、实践能力、计算机运用水平、书面及口头表达能力进行考核。2、毕业论文(设计)的内容和要求(包括原始数据、技术要求、工作要求等):以单片机为核心设计了基于激光测距的防撞预警系统,采用TDC-GP2芯片作为激光飞行计时单元,给出激光发射及回波接收放大电路,基于模块化思想设计、完成系统软件设计流程;最后通过实验测试,系统要能很好测出前方车辆距离及运行状态,并能及时发出报警,利用Matlab对其测试结果进行验证,修正。3、对毕业论文(设计)成果的要求包括图表、实物等硬件要求:设计完成后,要提供电路图,实验电路版,控制原始程序,实验要保存大量的原始数据。完成设计论文。4、毕业论文(设计)工作进度计划:序号论文(设计)工作进度日期(起止周数)1根据所出题目,结合自身所学知识,选择合适课题,确定毕业设计论文题目。13-14-1第16周止2根据所定题目,全面搜集素材,列出各种设计方案,并一一比较,选择出最好的设计方案。13-14-1第18周止3联系指导老师,将自己的设计方案与老师沟通、交流,得到指导老师的认同与指点,开始设计。13-14-1第19周止4根据方案,确定所要用的器材。设计总体框架结构,分出各大的模块,并将其展开,以得到比较细的设计模式。13-14-2第1周止5 根据所列框图,结合自己所学知识,开始各分支电路模块的设计。13-14-2第2周止6完成初稿,将所做的模块给指导老师查阅,看是否有不当之处,再进行改进。并将大电路的设计方案告之老师,得到老师更好的建议。13-14-2第3周止7大胆进行设计,将每一个小的电路,大的模块,都精心设计好,完成整个硬件和软件部分的设计过程。13-14-2第6周止8将所有设计整理结合,形成设计论文,交与指导老师检查,并经老师指点,做进一步的改进工作。13-14-2第7周止9改进毕业设计论文,得到自己及老师认为满意的论文。13-14-2第10周止指导教师日期年 月 日教研室审查意见:签字: 年 月 日学院负责人意见:签字: 年 月 日学生签字: 接受任务时间: 年 月 日注:任务书由指导教师填写。 毕业论文(设计)开题报告题目基于单片机的超声波测距1、本课题的研究意义,国内外研究现状、水平和发展趋势 近年来,随着电子测量技术的发展,运用超声波作出精确测量已成可能。随着经济发展,电子测量技术应用越来越广泛,而超声波测量精确高,成本低,性能稳定则备受青睐。超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。一般的超声波测距仪可用于固定物位或液位的测量,适用于建筑物内部、液位高度的测量等。 随着科学技术的快速发展,超声波

温馨提示

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

评论

0/150

提交评论