毕业设计管理系统设计说明书

毕业设计管理系统设计说明书
毕业设计管理系统设计说明书

C++项目设计说明书项目一:毕业设计管理系统

毕业设计管理系统设计说明书

一.系统设计要求

1、基本要求:

(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;

(2)要求在设计的过程中,建立清晰的类层次;

(3)在系统中至少要定义四个类,每个类中要有各自的属性和方法;

2、创新要求:

在基本要求达到后,可进行创新设计,如根据查找结果进行修改的功能及设计出比较友好的界面等。

二.设计思路

完成主函数基本框架的编写,列出所需函数的声明,确定程序的基本功能利用vector矢量存放信息,并完成信息输出与读取功能

建立Student基类,然后

派生出四个类

确定基类的数据与函数成员,并在派

生类中继承,完成成员函数编写

分工完成各个功能的函数的编写,完

成后进行组合与调试,讨论修改

达到基本要求后,开始进行创新设计,添加根据查找结果修改的功能,并对

界面进行优化,使之变得更友好

进行压力测试,输入不同数据测试程序,并根据结果不断进行修改

三.系统功能模块图

四.类的层次图(包括类成员列表)

显示全学生信息 查找并修改学生信息 根据查找结果修改的功能 创新功能

添加学

生信息

添加本科生信息 添加第二学位学生信息 添加硕士研究生信息 添加博士研究生信息

删除学生信息 清 屏 用户选

择 退出系统

提升学生级别

五.调试过程

数据成员

学生号编号:iId 姓名:strName 年级:strGrade

班级:strClass 级别:strRank 论文题目:strTitle 分数:strMark

老师:strTeacher 函数成员

SetId,GetId SetName,GetName SetGrade,GetGrade

SetClass,GetClass SetRank,GetRank SetTitle,GetTitle SetMark,GetMark

SetTeacher,GetTeach UnderGraduate SecondDegree Master

Doctor 基类: Student 四个派生类 学生信息类: PersonInfo

1.在编写类时边写边调试,防止出现低级错误;

2.确定函数的基本框架,分工边写好函数后,组合调试,测试系统功能;

3.进行创新功能的设计,不断调试功能,使其更加完善;

4.基本完成系统后进行压力测试以及友好界面的设计阶段,不断调试,是系统功能更加完美;

5.具体问题解决:在实验过程中,我们遇到了一个严重问题——输入学生信息时,我们输入的第一个信息永远输不进去;最后一个信息也终究显示不出来。这个问题困扰了我们整整一个下午,因为当时觉得程序代码太多,我们自认为用调试功能为免显得繁琐。所以只是目测追究。可是,我们最终还是找不出错误。虽然,我们可以确定是哪一个程序段(函数)出现了问题。最终,我们用上了debug。首先,我们入手遇到了很大的麻烦。比如说,遇到点击进入函数时,出现的是那种陌生的代码。随着课堂的记忆,我们选择跳出,然在重新进入,这时,我们就重新叫道了熟悉的代码。我们的调试过程也开始边得娴熟起来。后来,发现,我们出现的错误是那种缓存的错误。程序逻辑上是没有问题的,我们不可能目测发现错误。

六.总结

在这次C++的大项目的过程中,我们深刻地体会到了团队合作的重要性,团队分工明确,遇到问题共同解决是一个团队完成一个项目的关键所在。虽然项目中用到的一些我们还没有学到的知识,不够经过我们的学习,已经掌握了项目所需要的基本知识,并最终完成项目的编写;在编写项目过程中,我们谨遵老师平时的谆谆教诲,保持良好的编程格式,代码层次清晰,并且我们在必要的地方加上了注释,易于老师读懂。

然后,通过本次项目设计,我们深知知识学得越多,程序编起来就越容易,思维会更敏捷。虽然理论上C++课程已经结束。但我们知道还有很多的知识需要我们去追求,去获得。我们发现,随着我们深入下去,我们现在学的知识是多么的肤浅,是多么的基础。C++课程只是给了我们一个开端,我们今后仍需不断地走下去。

附:程序代码

1.StudentGraduateSys.h

#include "UnderGraduate.h"

#include "SecondDegree.h"

#include "Master.h"

#include "Doctor.h"

#include "PersonInfo.h"

#include

using namespace std;

// 从文件中加载学生个人信息

bool LoadPersonInfo(vector& vecPersonInfo);

// 一次只存放一个学生信息到文件中去

bool SaveOnePersonInfo(PersonInfo& person);

// 显示学生个人信息

void DisplayPersonInfo(vector& vecPersonInfo);

//////////////////////////////////////////////////////////////////////////

//

// 添加记录

//

//////////////////////////////////////////////////////////////////////////

// 添加一个本科生的个人信息

void AddUnderGraduate(UnderGraduate& undergraduate);

// 添加一个第二学位学生的个人信息

void AddSecondDegree(SecondDegree& seconddegree);

// 添加一个硕士研究生的个人信息

void AddMaster(Master& master);

// 添加一个博士研究生的个人信息

void AddDoctor(Doctor& doctor);

// 退出系统

void Exit();

2.StudentGraduateSys..cpp

#include

#include

#include

#include

#include "StudentGraduateSys.h"

using namespace std;

static int count=0; //定义全局静态变量用于设置学号

int main(void)

{

int choice = 0;

vector vecPersonInfo;

PersonInfo tempPersonInfo;

LoadPersonInfo(vecPersonInfo);

vector vecSort;

vector::iterator it = vecPersonInfo.begin();

vector::iterator array[12]; //用于作为vector的迭代子

vecPersonInfo.clear(); //清除原有残余信息

while (1)

{

cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"<

cout<<"~~ 请输入选项:"<

cout<<"~~ 1. 添加一个本科生的信息."<

cout<<"~~ 2. 添加一个第二学位学生的信息."<

cout<<"~~ 3. 添加一个硕士研究生的信息."<

cout<<"~~ 4. 添加一个博士研究生的信息."<

cout<<"~~ 5. 显示全部学生信息."<

cout<<"~~ 6. 查找并修改学生信息."<

cout<<"~~ 7. 提升学生级别."<

cout<<"~~ 8. 删除学生信息."<

cout<<"~~ 9. 清屏."<

cout<<"~~10. 退出系统."<

cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"<

cin>>choice;

UnderGraduate tempUnderGraduate;

SecondDegree tempSecondDegree;

Master tempMaster;

Doctor tempDoctor;

switch(choice){

case 1:

{

// 添加一个本科生的个人信息

count++;

array[count]=vecPersonInfo.begin()+count-1;

AddUnderGraduate(tempUnderGraduate);

tempPersonInfo.SetId(tempUnderGraduate.GetId());

tempPersonInfo.SetName(tempUnderGraduate.GetName());

tempPersonInfo.SetGrade(tempUnderGraduate.GetGrade());

tempPersonInfo.SetClass(tempUnderGraduate.GetClass());

tempPersonInfo.SetRank(tempUnderGraduate.GetRank());

tempPersonInfo.SetTitle(tempUnderGraduate.GetTitle());

tempPersonInfo.SetTeacher(tempUnderGraduate.GetTeacher());

tempPersonInfo.SetMark(tempUnderGraduate.GetMark());

vecPersonInfo.push_back(tempPersonInfo);

SaveOnePersonInfo(tempPersonInfo);

}

break;

case 2:

{

// 添加一个第二学位学生的个人信息

count++;

array[count]=vecPersonInfo.begin()+count-1;

AddSecondDegree(tempSecondDegree);

tempPersonInfo.SetId(tempSecondDegree.GetId());

tempPersonInfo.SetName(tempSecondDegree.GetName());

tempPersonInfo.SetGrade(tempSecondDegree.GetGrade());

tempPersonInfo.SetClass(tempSecondDegree.GetClass());

tempPersonInfo.SetRank(tempSecondDegree.GetRank());

tempPersonInfo.SetTitle(tempSecondDegree.GetTitle());

tempPersonInfo.SetTeacher(tempSecondDegree.GetTeacher());

tempPersonInfo.SetMark(tempSecondDegree.GetMark());

vecPersonInfo.push_back(tempPersonInfo);

SaveOnePersonInfo(tempPersonInfo);

}

break;

case 3:

{

// 添加一个硕士研究生的个人信息

count++;

array[count]=vecPersonInfo.begin()+count-1;

AddMaster(tempMaster);

tempPersonInfo.SetId(tempMaster.GetId());

tempPersonInfo.SetName(tempMaster.GetName());

tempPersonInfo.SetGrade(tempMaster.GetGrade());

tempPersonInfo.SetClass(tempMaster.GetClass());

tempPersonInfo.SetRank(tempMaster.GetRank());

tempPersonInfo.SetTitle(tempMaster.GetTitle());

tempPersonInfo.SetTeacher(tempMaster.GetTeacher());

tempPersonInfo.SetMark(tempMaster.GetMark());

vecPersonInfo.push_back(tempPersonInfo);

SaveOnePersonInfo(tempPersonInfo);

}

break;

case 4:

{

// 添加一个博士研究生的个人信息

count++;

array[count]=vecPersonInfo.begin()+count-1;

AddDoctor(tempDoctor);

tempPersonInfo.SetId(tempDoctor.GetId());

tempPersonInfo.SetName(tempDoctor.GetName());

tempPersonInfo.SetGrade(tempDoctor.GetGrade());

tempPersonInfo.SetClass(tempDoctor.GetClass());

tempPersonInfo.SetRank(tempDoctor.GetRank());

tempPersonInfo.SetTitle(tempDoctor.GetTitle());

tempPersonInfo.SetTeacher(tempDoctor.GetTeacher());

tempPersonInfo.SetMark(tempDoctor.GetMark());

vecPersonInfo.push_back(tempPersonInfo);

SaveOnePersonInfo(tempPersonInfo);

}

break;

case 5:

{

// 显示全部学生个人信息

cout<<"全部的学生的信息为:"<

DisplayPersonInfo(vecPersonInfo);

}

break;

case 6:

{

// 查找学生信息

int id;

cout<<"输入要查找的学生编号:";

cin>>id;

//判断是否存在此学生的信息

if(id<=count)

{

cout<<"存在该学生的信息!信息如下:"<

cout<<"|ID|Name|Grade|lass|Rank|Title|TeacherMark |"<

cout<< "| " << array[id]->GetId() << " |";

cout<< setw(7)<< array[id]->GetName() << " |" ;

cout<< setw(7)<< array[id]->GetGrade() << " |" ;

cout<< setw(7)<< array[id]->GetClass() << " |" ;

cout<< setw(7)<< array[id]->GetRank() << " |" ;

cout<< setw(12)<< array[id]->GetTitle()<< " |" ;

cout<< setw(9)<< array[id]->GetTeacher()<< " |" ;

cout<< setw(5)<GetMark()<<" |" <

//创新设计----根据查找结果进行修改的功能

int isChange;

cout<<"是否要修改该学生的信息?(需要--请输入1,不需要--请输入2)"<

cin>>isChange;

switch(isChange)

{

case 1:

{

sign: //goto语句的标识

int type;

cout<<"请输入要修改的信息选项:1.姓名; 2.年级;

3.班级;

4.等级;

5.论文题目;

6.指导老师;

7.成绩"<

cin>>type;

switch(type)

{

case 1:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetName(strTemp);

cout<<"修改成功!!!"<

}

break;

case 2:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetGrade(strTemp);

cout<<"修改成功!!!"<

}

break;

case 3:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetClass(strTemp);

cout<<"修改成功!!!"<

}

break;

case 4:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetRank(strTemp);

cout<<"修改成功!!!"<

}

break;

case 5:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetTitle(strTemp);

cout<<"修改成功!!!"<

}

break;

case 6:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetTeacher(strTemp);

cout<<"修改成功!!!"<

}

break;

case 7:

{

string strTemp;

cout<<"请输入新信息:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetMark(strTemp);

cout<<"修改成功!!!"<

}

break;

default:cout<<"Error input!"<

}

cout<<"继续修改请选1,查看修改后信息请选2,退出请选3;"<

int ch;

cin>>ch;

switch(ch)

{

case 1:

goto sign;

case 2:

{

cout<<"存在该学生的信息!信息如下:"<

cout<<"|ID|Name|Grade|Class|Rank|Title| Teacher |Mark |"<

cout<< "| " << array[id]->GetId() << " |";

cout<< setw(7)<GetName() << " |" ;

cout<< setw(7)<GetGrade() << " |" ;

cout<< setw(7)<< array[id]->GetClass() << " |" ;

cout<< setw(7)<< array[id]->GetRank() << " |" ;

cout<< setw(12)<GetTitle()<< " |" ;

cout<GetTeacher()<<" |" ;

cout<< setw(5)<GetMark()<<" |" <

cin.get();

cin.get();

}

break;

case 3:default:break;

}

}

break;

case 2: default: break;

}

}

else

cout<<"不存在此学生的信息!"<

}

break;

case 7:

{

// 提升学生级别

int id;

cout<<"输入要提升级别的学生编号:";

cin>>id;

//判断是否存在此学生的信息

if(id<=count)

{

cout<GetName()<<"的级别是:"<GetRank()<

string strTemp;

cout<<"请输入提升后的级别:";

getline(cin,strTemp);

getline(cin,strTemp);

array[id]->SetRank(strTemp);

cout<<"提升级别成功!!!"<

}

else

cout<<"不存在此学生的信息!"<

}

break;

case 8:

{

// 删除学生个人信息

int id;

cout<<"输入要删除的学生的学生编号:";

cin>>id;

//判断是否存在此学生的信息

if(id<=count)

{

vecPersonInfo.erase(array[id]);

cout<GetName<<"的信息已经被删除!"<

}

else

cout<<"不存在此学生的信息!"<

}

break;

case 9:

{

// 清屏

system("cls");

}

break;

case 10:

{

// 退出系统

Exit();

}

break;

default:cout<<"Error input!"<

}

}

system("PAUSE");

return 0;

}

// 从文件中加载学生个人信息

bool LoadPersonInfo(vector& vecPersonInfo) {

fstream file;

file.open("personInfo.txt",ios::in);

if (!file.is_open())

{

cout<<"The file is not exist!"<

return false;

}

PersonInfo tempPersonInfo;

while (!file.eof())

{

fflush(stdin);

char strTemp[30];

file.getline(strTemp,30);

if (strTemp[0] == '\0')

{

break;

}

tempPersonInfo.SetId(atoi(strTemp));

file.getline(strTemp,30);

tempPersonInfo.SetName(strTemp);

file.getline(strTemp,30);

tempPersonInfo.SetGrade(strTemp);

file.getline(strTemp, 30);

tempPersonInfo.SetClass(strTemp);

file.getline(strTemp, 30);

tempPersonInfo.SetRank(strTemp);

file.getline(strTemp, 30);

tempPersonInfo.SetTitle(strTemp);

file.getline(strTemp, 30);

tempPersonInfo.SetTeacher(strTemp);

file.getline(strTemp, 30);

tempPersonInfo.SetMark(strTemp);

vecPersonInfo.push_back(tempPersonInfo);

}

return true;

}

// 一次只存放一个学生信息到文件中去

bool SaveOnePersonInfo(PersonInfo& person)

{

fstream file;

file.open("personInfo.txt", ios::app|ios::out);

if (!file.is_open())

{

cout<<"The file is not exist!"<

return false;

}

file<

file<

file<

file<

file<

file<

file<

file<

file.close();

return true;

}

// 显示学生个人信息

void DisplayPersonInfo(vector& vecPersonInfo)

{

vector::iterator it = vecPersonInfo.begin();

cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"<

cout<<"| ID | Name | Grade | Class| Rank | Title | Teacher | Mark|"<

for (;it!=vecPersonInfo.end(); it++)

{

cout<< "| " << it->GetId() << " |";

cout<< setw(7)<< it->GetName() << " |" ;

cout<< setw(7)<< it->GetGrade() << " |" ;

cout<< setw(7)<< it->GetClass() << " |" ;

cout<< setw(7)<< it->GetRank() << " |" ;

cout<< setw(12)<< it->GetTitle()<< " |" ;

cout<< setw(9)<< it->GetTeacher()<< " |" ;

cout<< setw(5)<GetMark()<<" |" <

}

cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~"<

}

//退出系统

void Exit()

{

cout<<"系统已经关闭!"<

system("PAUSE");

exit(-1);

}

//添加一个本科生的个人信息

void AddUnderGraduate(UnderGraduate& tempUnderGraduate)

{

string strTemp;

cout<<"请输入本科生的信息:"<

cout<<"学生编号:"<

tempUnderGraduate.SetId(count);

cout<

cout<<"姓名:";

getline(cin, strTemp);

tempUnderGraduate.SetName(strTemp);

cout<<"年级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetGrade(strTemp);

cout<<"班级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetClass(strTemp);

cout<<"级别:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetRank(strTemp);

cout<<"论文题目:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetTitle(strTemp);

cout<<"指导老师:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetTeacher(strTemp);

cout<<"成绩:";

getline(cin, strTemp);

getline(cin, strTemp);

tempUnderGraduate.SetMark(strTemp);

}

//添加一个第二学位学生的个人信息

void AddSecondDegree(SecondDegree& tempSecondDegree) {

string strTemp;

cout<<"请输入第二学位学生的信息:"<

cout<<"学生编号:"<

tempSecondDegree.SetId(count);

cout<

cout<<"姓名:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetName(strTemp);

cout<<"年级:";

getline(cin, strTemp);

tempSecondDegree.SetGrade(strTemp);

cout<<"班级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetClass(strTemp);

cout<<"级别:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetRank(strTemp);

cout<<"论文题目:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetTitle(strTemp);

cout<<"指导老师:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetTeacher(strTemp);

cout<<"成绩:";

getline(cin, strTemp);

getline(cin, strTemp);

tempSecondDegree.SetMark(strTemp);

}

//添加一个硕士研究生的个人信息

void AddMaster(Master& tempMaster)

{

string strTemp;

cout<<"请输入硕士研究生的信息:"<

cout<<"学生编号:"<

tempMaster.SetId(count);

cout<

cout<<"姓名:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetName(strTemp);

cout<<"年级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetGrade(strTemp);

cout<<"班级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetClass(strTemp);

cout<<"级别:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetRank(strTemp);

cout<<"论文题目:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetTitle(strTemp);

cout<<"指导老师:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetTeacher(strTemp);

cout<<"成绩:";

getline(cin, strTemp);

getline(cin, strTemp);

tempMaster.SetMark(strTemp);

}

//添加一个博士研究生的个人信息

void AddDoctor(Doctor& tempDoctor)

{

string strTemp;

cout<<"请输入博士研究生的信息:"<

cout<<"学生编号:"<

tempDoctor.SetId(count);

cout<

cout<<"姓名:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetName(strTemp);

cout<<"年级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetGrade(strTemp);

cout<<"班级:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetClass(strTemp);

cout<<"级别:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetRank(strTemp);

cout<<"论文题目:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetTitle(strTemp);

cout<<"指导老师:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetTeacher(strTemp);

cout<<"成绩:";

getline(cin, strTemp);

getline(cin, strTemp);

tempDoctor.SetMark(strTemp); }

3.Student.h

#include

using namespace std;

class Student

{

protected:

int iId;

string strName;

string strGrade;

string strClass;

string strRank;

string strTitle;

string strTeacher;

string strMark;

public:

Student();

virtual ~Student();

// 设置学号设置学号

void SetId(int iId);

// 获取职工号

int& GetId();

// 设置姓名

void SetName(string strName);

// 获取姓名

string& GetName();

// 设置年级

void SetGrade(string strGrade);

// 获取年级

string& GetGrade();

// 设置班级

void SetClass(string strClass);

机械手毕业设计

目录 第一章绪论 1.1 项目的技术背景与研究意义 1.2 取苗装置的国内外研究现状 1.2.1国外取苗装置的研究现状 1.2.2国内取苗装置的研究现状 1.3论文的研究目标与研究内容 1.4论文研究的技术路线 第二章穴盘苗自动移栽机机械手整机方案设计 2.1 穴盘苗自动移栽机机械手工作原理和结构分析2.2 利用UG建立样机模型 第三章穴盘苗自动移栽机取苗装置的结构设计 3.1 取苗机构的基本构成 基本结构 (1)机械手 (2)穴盘定位平台 (3)驱动系统 (4)控制系统 PLC程序 (5)底座 3.2 取苗机构的工作原理 第四章穴盘苗自动移栽机送苗装置的设计要求分析1穴盘育苗及穴盘的选择 2送苗装置的工作原理和结构组成 3送苗机构的控制系统 第五章取苗装置的实验研究 1.取苗装置影响因素分析 2影响取苗成功率的因素 3取苗装置手臂角度的实验分析

第六章总结与展望1 全文总结 2研究展望 结束语 参考文献 致谢

第一章绪论 1.1项目的技术背景与研究意义 随着社会进步和人民生活水平的提高,设施农业已成为国民经济中的支柱产业,温室蔬菜、花卉及棉花生产对发展农村经济,增加农民收入,丰富人民的菜篮子,改善人民生活具有举足轻重的作用。穴盘苗移栽是近年才兴起的种植新技术,它具有缩短生育期,提早成熟,提高棉花单产,具有广阔的推广前景。过去几年温室大棚育出成品苗向大田移栽,全部是靠人工移栽。穴盘苗自动移栽技术是温室蔬菜或花卉生产实现工厂化和自动化而采用的一种重要的种植方式。目前,国内穴盘苗移栽的取苗、喂苗环节主要靠手工完成,劳动强度大,作业效率低,不能满足规模化生产的需要,从而制约了蔬菜生产的发展。因此,研制开发适合我国国情、结构简单、价格低廉、性能稳定可靠的中小型穴盘苗自动移栽机迫在眉睫,而移栽机械手是温室穴盘苗移栽自动化的关键部分,能够完成“穴盘定位—自动送苗—钵苗抓取—钵苗投放”这一系列连续动作,其性能直接影响移栽机的移栽质量。穴盘苗移栽机械手的研究对实现实现温室穴盘苗移栽生产过程自动化、减轻穴盘苗移栽作业的劳动强度、提高作物移栽质量,推进我国温室农业作物生产机械化和自动化进程,特别是我国“十二五”农业发展规划的顺利实施具有重大意义。 1.2 取苗装置的国内外研究现状 国外穴盘苗移栽机取苗装置的技术较成熟,而且大部分机型开始投入使用,尤其是应用于花卉、蔬菜等经济价值高的作物的大面积移栽,具有很好的经济价值。国内的研究主要集中在各大高校及科研院所,且大部分的研究成果只是样机的试制,尚没有成型的机型投入生产应用。 1.2.1国外取苗装置研究现状 20 世纪初期部分国家开始出现移栽机具。三十年代出现移栽装置或移栽器代替人工取苗。五十年代移栽的生产技术研究,研制出了不同结构的半自动移栽机。八十年代,半自动移栽机已在欧美国家的农业生产中广泛被使用,培育穴盘苗、移栽作物等,实现了制造机械、播种机械、移栽机等各种机械配套使用。到90年代,有关部门加强从育苗到栽植整个系统的研究,使育苗和栽植有机地结合,研制出多种全自动移栽机,如日本90年代初将穴盘苗自动移栽机列为农业机械急需开发的项目,日本农机研究所联合三家农机公司,于1993年至1995年期间开发出了三种型号的全自动移栽机(图1-1~1-3),可移栽穴盘苗或纸钵苗,主要

毕业设计论文-四自由度的工业机器人机械手设计说明书

摘要 在当今大规模制造业中,企业为提高生产效率,保障产品质量,普遍重视生产过程的自动化程度,工业机器人作为自动化生产线上的重要成员,逐渐被企业所认同并采用。工业机器人的技术水平和应用程度在一定程度上反映了一个国家工业自动化的水平,目前,工业机器人主要承担着焊接、喷涂、搬运以及堆垛等重复性并且劳动强度极大的工作,工作方式一般采取示教再现的方式。 本文将设计一台四自由度的工业机器人,用于给冲压设备运送物料。首先,本文将设计机器人的底座、大臂、小臂和机械手的结构,然后选择合适的传动方式、驱动方式,搭建机器人的结构平台;在此基础上,本文将设计该机器人的控制系统,包括数据采集卡和伺服放大器的选择、反馈方式和反馈元件的选择、端子板电路的设计以及控制软件的设计,重点加强控制软件的可靠性和机器人运行过程的安全性,最终实现的目标包括:关节的伺服控制和制动问题、实时监测机器人的各个关节的运动情况、机器人的示教编程和在线修改程序、设置参考点和回参考点。 关键词:机器人,示教编程,伺服,制动

ABSTRACT In the modern large-scale manufacturing industry, enterprises pay more attention on the automation degree of the production process in order to enhance the production efficiency, and guarantee the product quality. As an important part of the automation production line, industrial robots are gradually approved and adopted by enterprises. The technique level and the application degree of industrial robots reflect the national level of the industrial automation to some extent, currently, industrial robots mainly undertake the jops of welding, spraying, transporting and stowing etc. , which are usually done repeatedly and take high work strength, and most of these robots work in playback way. In this paper I will design an industrial robot with four DOFs, which is used to carry material for a punch. First I will design the structure of the base, the big arm, the small arm and the end manipulator of the robot, then choose proper drive method and transmission method, building the mechanical structure of the robot. On this foundation, I will design the control system of the robot, including choosing DAQ card, servo control, feedback method and designing electric circuit of the terminal card and control software. Great attention will be paid on the reliability of the control software and the robot safety during running. The aims to realize finally include: servocontrol and brake of the joint, monitoring the movement of each joint in realtime, playback programming and modifying the program online, setting reference point and returning to reference point. KEY WORDS: robot, playback, servocontrol, brake

气动机械手的毕业设计说明

毕业设计(论文)题目:气动机械手的设计 系部:机电工程系 专业:数控技术 班级: : 学号:

目录 摘要 (3) 第一章前言 1.1机械手概述 (4) 1.2机械手的组成和分类 (4) 1.2.1机械手的组成.......................................4 1.2.2机械手的分类.......................................6 第二章机械手的设计方案 2.1机械手的坐标型式与自由度.............................. 8 2.2机械手的手部结构方案设计.............................. 8 2.3机械手的手腕结构方案设计.............................. 9 2.4机械手的手臂结构方案设计...............................9 2.5机械手的驱动方案设计...................................9 2.6机械手的控制方案设计...................................9 2.7机械手的主要参数.......................................9 2.8机械手的技术参数列表...................................9 第三章手部结构设计 3.1夹持式手部结构.........................................11 3.1.1手指的形状和分类.................................11 3.1.2设计时考虑的几个问题.............................14

汽车转向系设计说明书

汽车设计课程设计说明书 题目:重型载货汽车转向器设计 姓名:席昌钱 学号:5 同组者:严炳炎、孔祥生、余鹏、李朋超、郑大伟专业班级:09车辆工程2班 指导教师:王丰元、邹旭东

设计任务书 目录 1.转向系分析 (4) 2.机械式转向器方案分析 (8) 3.转向系主要性能参数 (9) 4.转向器设计计算 (14) 5.动力转向机构设计 (16) 6.转向梯形优化设计 (22) 7.结论 (24) 8.参考文献 (25)

1转向系设计 基本要求 1.汽车转弯行驶时,全部车轮应绕瞬时转向中心旋转。 2.操纵轻便,作用于转向盘上的转向力小于200N。 3.转向系的角传动比在23~32之间,正效率在60%以上,逆效率在50%以上。 4.转向灵敏。 5.转向器和转向传动机构中应有间隙调整机构。 6.转向系应有能使驾驶员免遭或减轻伤害的防伤装置。 基本参数 1.整车尺寸: 11976mm*2395mm*3750mm。 2.轴数/轴距 4/(1950+4550+1350)mm 3.整备质量 12000kg 4.轮胎气压 2.转向系分析 对转向系的要求[3] (1) 保证汽车有较高的机动性,在有限的场地面积内,具有迅速和小半径转弯的能力,同时操作轻便; (2) 汽车转向时,全部车轮应绕一个瞬时转向中心旋转,不应有侧滑; (3) 传给转向盘的反冲要尽可能的小; (4) 转向后,转向盘应自动回正,并应使汽车保持在稳定的直线行驶状态; (5) 发生车祸时,当转向盘和转向轴由于车架和车身变形一起后移时,转向系统最好有保护机构防止伤及乘员. 转向操纵机构 转向操纵机构包括转向盘,转向轴,转向管柱。有时为了布置方便,减小由于装置位置误差及部件相对运动所引起的附加载荷,提高汽车正面碰撞的安全性以及便于拆装,在转向轴与转向器的输入端之间安装转向万向节,如图2-1。采用柔性万向节可减少传至转向轴上的振动,但柔性万向节如果过软,则会影响转向系的刚度。采用动力转向时,还应有转向动力系统。但对于中级以下的轿车和前轴负荷不超过3t的载货汽车,则多数仅在用机械转向系统而无动力转向装置。

计算机专业毕业设计说明书外文翻译(中英对照)

Talking about security loopholes Richard S. Kraus reference to the core network security business objective is to protect the sustainability of the system and data security, This two of the main threats come from the worm outbreaks, hacking attacks, denial of service attacks, Trojan horse. Worms, hacker attacks problems and loopholes closely linked to, if there is major security loopholes have emerged, the entire Internet will be faced with a major challenge. While traditional Trojan and little security loopholes, but recently many Trojan are clever use of the IE loophole let you browse the website at unknowingly were on the move. Security loopholes in the definition of a lot, I have here is a popular saying: can be used to stem the "thought" can not do, and are safety-related deficiencies. This shortcoming can be a matter of design, code realization of the problem. Different perspective of security loo phole s In the classification of a specific procedure is safe from the many loopholes in classification. 1. Classification from the user groups: ● Public loopholes in the software category. If the loopholes in Windows, IE loophole, and so on. ● specialized software loophole. If Oracle loopholes, Apach e,

机械手的设计毕业设计论文

天津机电职业技术学院毕业综合实践报告 专业电气自动化 班级电气自动化三班

目录 1 机械手的基本介绍 (1) 1.1 机械手的基本结构组成 (1) 1.1.1 气动手爪 (1) 1.1.2 伸缩气缸 (1) 1.1.3 回转气缸及垫板 (2) 1.1.4 提升气缸 (2) 1.2 直线运动传动组件 (2) 1.3 气动控制回路 (3) 2 传感器部分 (5) 2.1 传感器简介 (5) 2.2 磁性开关 (5) 2.3 光电传感器和光纤传感器 (5) 3 伺服电机应用 (7) 3.1 伺服系统 (7) 3.2 交流伺服系统的位置控制模式 (8) 3.3 接线 (10) 3.4 伺服驱动器的参数设置与调整 (10) 3.4.1 参数设置方式操作说明 (11) 3.4.2 面板操作说明: (11) 3.4.3 部分参数说明 (11) 3.5 最大速度(MAX_SPEED)和启动/停止速度(SS_SPEED)12 3.6 移动包络 (13) 4 PLC程序编写 (15) 4.1 PLC的选型和I/O接线 (15) 4.2 伺服电机驱动器参数设置 (15) 4.3 编写和调试PLC控制程序 (16) 4.4 初态检查复位子程序和回原点子程序 (19) 4.5 急停处理子程序 (20) 个人收获 (23) 参考文献 (24) 附录 (25) 致谢 (28)

1 机械手的基本介绍 1.1 机械手的基本结构组成 1.1.1 气动手爪 用于在各个工作站物料台上抓取/放下工件。由一个二位五通双向电控阀控制。见图 1-1 图 1-1 气动手爪 1.1.2 伸缩气缸 用于驱动手臂伸出缩回。由一个二位五通单向电控阀控制。见图 1-2 图 1-2 伸缩气缸

16L爱丽舍转向系统设计说明书

1.摘要 汽车转向器是汽车的重要组成部分,也是决定汽车主动安全性的关键总成,它的质量严重影响汽车的操纵稳定性。随着汽车工业的发展,汽车转向器也在不断的得到改进,虽然电子转向器已开始应用,但机械式转向器仍然广泛地被世界各国汽车及汽车零部件生产厂商所采用。而在机械式转向器中,循环球齿条-齿扇式转向器由于其自身的特点被广泛应用于各级各类汽车上。本文选择GX1608A型循环球齿条-齿扇式转向器作为研究课题,其主要内容有:汽车转向器的组成分类;转向器总成方案分析及其数据确定和转向器的设计过程。 这种转向器的优点是,操纵轻便,磨损小,寿命长。缺点是结构复杂,成本高,转向灵敏度不如齿轮齿条式。因此逐渐被齿轮齿条式取代。但随着动力转向的应用,循环球式转向器近年来又得到广泛使用。 关键词;转向器操纵稳定性循环球齿条-齿扇式转向器

目录 摘要 (1) 1绪论 (4) 2汽车转向系的组成及分类 (6) 2.1汽车转向系的类型和组成 (6) 2.1.1 机械式转向系 (9) 2.1.2 动力转向器 (10) 2.2 转向系主要性能参数 (11) 2.2.1转向器的效率 (11) 2.2.2传动比的变化特性 (12) 2.2.3转向盘自由行程 (17) 2.3 转向操纵机构及转向传动机构 (17) 2.3.1转向操纵机构 (17) 2.3.2转向传动机构 (18) 3转向器总成方案分析 (20) 3.1转向器设计要求 (20) 3.2转向器总成方案设计 (21) 4循环球式转向器主要尺寸参数的选择 (25) 5 转向器输出力矩的确定 (26) 6 轴的设计计算及校核 (27) 6.1 转向摇臂轴(即齿形齿扇轴)的设计计算 (27) 6.1.1材料的选择 (27) 6.1.2结构设计 (27) 6.1.3轴的设计计算 (27) 6.2 螺杆轴设计计算及主要零件的校核 (31) 6.2.1材料选择 (31) 6.2.2结构设计 (31) 6.2.3轴的设计计算 (32) 6.2.4钢球与滚道之间的接触应力校核 (34)

计算机专业毕业设计说明书

计算机专业毕业设计说明书(论文)写作方 法指导 (仅供参考) 毕业设计论文是毕业设计工作的总结和提高,与从事科研开发工作一样,必须有严谨求实的科学态度。毕业设计论文应有一定的学术价值和实用价值,能反映出作者所具有的专业基础知识和分析解决问题的能力。 在毕业设计期间,尽可能多地阅读文献资料是十分重要的,这不仅能防止重复研究,而且可为毕业设计做好技术准备,还可以学习论文的写作方法。一篇优秀的论文对启发思维,掌握论文的写作规范很有帮助。 论文的写作方法多种多样,并没有一个固定的格式,下面仅对论文中几个主要部分的写作方法提出一点参考性意见。 一、前言部分 前言部分也常用“引论”、“概论”、“问题背景”等作为标题,主要介绍论文的选题。 首先阐明选题的背景和选题的意义。选题需强调实际背景,说明在计算机研究中或部门信息化建设、管理现代化等工作中引发该问题的原因,问题出现的环境和条件,解决该问题后能起什么作用等。结合问题背景的阐述,使读者感受到此选题确有实用价值和学术价值,确有研究或开发的必要性。 前言部分常起画龙点睛的作用。选题实际又有新意,意味着研究或开发的方向对头,设计工作有价值。对一篇论文来说,前言写好了,就会吸引读者,使他们对你的选题感兴趣,愿意进一步了解你的工作成果。 二、综述部分 任何一个课题的研究或开发都是有学科基础或技术基础的。综述部分主要阐述选题在相应学科领域中的发展进程和研究方向,特别是近年来的发展趋势和最新成果。通过与中外研究成果的比较和评论,说明自己的选题是符合当前的研究方向并有所进展,或采用了当前的最新技术并有所改进,目的是使读者进一步了解选题的意义。

综述部分能反映出学生多方面的能力。首先,反映学生中外文献的阅读能力。通过查阅文献资料,了解同行的研究水平,在工作中和论文中有效地运用文献,这不仅能避免简单的重复研究,而且也能使研究开发工作有一个高起点。 其次,还能反映出学生综合分析的能力。从大量的文献中找到可以借鉴和参考的内容,这不仅要有一定的专业知识水平,还要有一定的综合能力。对同行研究成果是否能抓住要点,优缺点的评述是否符合实际、恰到好处,这与一个人的分析理解能力关系密切。 值得注意的是,要做好一篇毕业论文,必须阅读一定量(2~3篇)的近期外文资料,这不仅反映自己的外文阅读能力,而且有助于论文的先进性。 三、方案论证 在明确所要解决的问题并完成文献综述后,很自然地就要提出自己解决问题的思路和方案。在写作方法上,一是要通过比较显示自己方案的价值,二是让读者了解方案的创新之处或有新意的思路、算法和关键技术。 在与文献资料中的方案进行比较时,首先要阐述自己的设计方案,说明为什么要选择或设计这样的方案,前面评述的优点在此方案中如何体现,不足之处又是如何得到克服,最后完成的工作能达到什么样的性能和水平,有什么创新之处(或有新意)。如果自己的题目是总方案的一部分,要明确说明自己承担的部分,及对整个任务的贡献。 四、论文主体 前面三个部分的篇幅大约占论文的三分之一,主体部分要占三分之二左右。在这部分中,要将整个研究开发工作的内容,包括理论分析、总体设计、模块划分、实现方法等进行详细论述。 主体部分的写法,视选题的不同可以多样化,研究型论文和技术开发型论文的写法就有明显的不同。

工业机械手毕业设计--论文

摘要 随着微电子技术、传感器技术、控制技术和机械制造工艺水平的飞速发展,机器人的应用领域逐步从汽车拓展到其它领域。在各种类型的机器人中,模拟人体手臂而构成的关节型机器人,具有结构紧凑、所占空间小、运动空间大等优点,是应用最为广泛的机器人之一。尤其由柔性关节组成的柔性仿生机器人在服务机器人及康复机器人领域中的应用和需求越来越突出。 本文将设计一台四自由度的工业机器人,用于给冲压设备运送物料。首先,本文将设计机器人的底座、大臂、小臂和机械手的结构,然后选择合适的传动方式、驱动方式,搭建机器人的结构平台;在此基础上,本文将设计该机器人的控制系统,包括数据采集卡和伺服放大器的选择、反馈方式和反馈元件的选择、端子板电路的设计以及控制软件的设计,重点加强控制软件的可靠性和机器人运行过程的安全性,最终实现的目标包括:关节的伺服控制和制动问题、实时监测机器人的各个关节的运动情况、机器人的示教编程和在线修改程序、设置参考点和回参考点。 关键词:机器人,示教编程,伺服,制动

ABSTRACT With the development of microelectronic technology, sensor technology, the rapid development of control technology and machinery manufacturing technology level, the application of robots gradually expanded from cars to other fields. In all types of robots, the articulated robot arm simulation human form, has the advantages of compact structure, small occupied space, large moving space, is one of the most widely used robots. Especially flexible biomimetic robot composed of flexible joint in the field of service robot and rehabilitation robot application and demand more and more prominent. In this paper I will design an industrial robot with four DOFs, which is used to carry material for a punch. First I will design the structure of the base, the big arm, the small arm and the end manipulator of the robot, then choose proper drive method and transmission method, building the mechanical structure of the robot. On this foundation, I will design the control system of the robot, including choosing DAQ card, servo control, feedback method and designing electric circuit of the terminal card and control software. Great attention will be paid on the reliability of the control software and the robot safety during running. The aims to realize finally include: servocontrol and brake of the joint, monitoring the movement of each joint in realtime, playback programming and modifying the program online, setting reference point and returning to reference point. KEY WORDS: robot, playback, servocontrol, brake

机械手设计说明书-毕业设计

Equation Chapter 1 Section 1(1.1) 本科毕业设计说明书 题目抓件液压机械手设计 姓名Design of hydraulic manipulator for grasping 谢百松学号20051103006 专业机械设计制造及其自动化 指导教师肖新棉职称副教授 中国·武汉 二○○九年五月

分类号密级华中农业大学本科毕业设计说明书 抓件液压机械手设计 Design of hydraulic manipulator for grasping 学生姓名:谢百松 学生学号:20051103006 学生专业:机械设计制造及其自动化 指导教师:肖新棉副教授 华中农业大学工程技术学院 二○○九年五月

目录 摘要 (1) 关键词 (1) Abstract (1) Key words (1) 前言 (2) 1.总体方案设计 (2) 2.手部设计 (3) 2.1 确定手部结构 (4) 2.2 手部受力分析 (4) 2.3 手部夹紧力的计算 (5) 2.4 手抓夹持误差分析与计算 (6) 2.5 手部夹紧缸的设计计算 (6) 2.5.1 夹紧缸主要尺寸的计算 (6) 2.5.2 缸体结构及验算 (7) 2.5.3 缸筒两端部的计算 (8) 2.5.4 缸筒加工工艺要求 (10) 2.5.5 活塞与活塞杆的设计计算 (10) 3.臂部设计 (12) 3.1 臂部设计基本要求 (12) 3.2 臂部结构的确定 (12) 3.3 臂部设计计算 (12) 3.3.1 水平伸缩缸的设计计算 (12) 3.3.2 升降缸的设计计算 (14) 3.3.3 手臂回转液压缸的设计计算 (15) 4.液压系统设计 (16) 4.1 系统参数的计算 (16) 4.1.1 确定系统工作压力 (16) 4.1.2 各个液压缸流量的计算 (16) 4.2设计液压系统图 (17) 4.3 选择液压元件 (19) 4.3.1泵和电机的选择 (19) 4.3.2 选择液压控制阀和辅助元件 (19) 4.4根据动作要求编制电磁铁动作顺序表 (20) 5.控制系统设计 (21) 5.1 确定输入、输出点数,画出接口端子分配图 (21) 5.2 画出梯形图 (21) 5.3 按梯形图编写指令语句 (23) 6. 总结 (24) 参考文献 (25) 致谢 (26)

微型轿车转向器毕业设计说明书

目录 设计任务书 (3) 设计评语 (6) 摘要 (7) 第一章.绪论 (8) 汽车发展史概括 (8) 中国轿车工业发展现状 (8) 汽车转向系统设计技术发展概括 (9) 微型轿车转向系统及其与整车的关系 (9) 第二章.转向系技术的最新发展 (10) 电动助力转向系统技术 (10) 轿车的四轮转向技术 (17) 第三章.微型轿车转向系统的组成 (25) 转向操纵机构 (25) 转向传动机构 (25) 转向器 (25) 第四章.微型轿车转向系的特点及要求 (26) 微型汽车转向系统的特点 (26) 微型汽车转向系统要求 (26) 第五章.转向系的主要性能参数 (27) 转角及最小转弯半径 (27) 转向系的效率 (28) 转向系的角传动比 (29) 转向系的力传动比 (31) 转向系的传动间隙特性 (34)

转向系的刚度 (35) 转向盘的总转动圈数 (35) 第六章.转向器的结构型式选择及其计算 (36) 齿轮齿条式转向器小齿轮计算 (37) 齿条计算 (37) 转向器壳体 (38) 齿轮的强度校核 (39) 齿条强度校核 (41) 第七章.转向传动机构的设计 (42) 转向节臂的设计 (43) 转向横拉杆 (44) 球头销计算 (46) 第八章.转向操纵机构的设计 (49) 转向盘 (49) 转向轴和转向管柱的结构设计 (49) 第九章.转向减振器的设计 (52) 第十章.设计总结 (53) 参考文献 (55) 附件:外文翻译——有关燃油添加剂 (56) 一、原文 (57) 二、译文 (61)

设计任务书 一、微型轿车设计任务书 1.设计原则 (1)选用国内大量生产的发动机和零部件; (2)造型美观,乘坐舒适,价廉实用; (3)面对乡镇和农村广大用户。 2.主要技术参数 车型 7080 车身 3门两厢式 乘员数 3-4 布置形式发动机前置前驱 总长(mm)≤3000 总宽(mm)≤1400 总高(mm)≤1450 轴距(mm) 2000 前轮距(mm) 1240 后轮距(mm) 1240 前悬(mm) 500 后悬(mm) 500 离去角 30o 最小离地间隙(mm) 150 最小转弯直径(m) 9 最高车速(km/L) 100 最大爬坡度 20% 空车总质量(kg) 550 满载总质量(kg) 800 制动距离(m)≤6(制动初速度为30km/L)制动跑偏(mm)≤400 油耗(L/100kg)≤ 续航里程(km) 300 加速时间(s) 25

机械手毕业论文.

毕业设计论文题目:气动机械手的设计 设计人: 指导教师: 所属院系: 专业班级: 2014年11月10日

第1章前言 1.1工业机械手概述 工业机器人由操作机(机械本体)、控制器、伺服驱动系统和检测传感装置构成,是一种仿人操作,自动控制、可重复编程、能在三维空间完成各种作业的机电一体化自动化生产设备。特别适合于多品种、变批量的柔性生产。它对稳定、提高产品质量,提高生产效率,改善劳动条件和产品的快速更新换代起着十分重要的作用。机器人技术是综合了计算机、控制论、机构学、信息和传感技术、人工智能、仿生学等多学科而形成的高新技术,是当代研究十分活跃,应用日益广泛的领域。机器人应用情况,是一个国家工业自动化水平的重要标志。机器人并不是在简单意义上代替人工的劳动,而是综合了人的特长和机器特长的一种拟人的电子机械装置,既有人对环境状态的快速反应和分析判断能力,又有机器可长时间持续工作、精确度高、抗恶劣环境的能力,从某种意义上说它也是机器的进化过程产物,它是工业以及非产业界的重要生产和服务性设各,也是先进制造技术领域不可缺少的自动化设备.机械手是模仿着人手的部分动作,按给定程序、轨迹和要求实现自动抓取、搬运或操作的自动机械装置。在工业生产中应用的机械手被称为“工业机械手”。生产中应用机械手可以提高生产的自动化水平和劳动生产率:可以减轻劳动强度、保证产品质量、实现安全生产;尤其在高温、高压、低温、低压、粉尘、易爆、有毒气体和放射性等恶劣的环境中,它代替人进行正常的工作,意义更为重大。因此,在机械加工、冲压、铸、锻、焊接、热处理、电镀、喷漆、装配以及轻工业、交通运输业等方面得到越来越广泛的引用.机械手的结构形式开始比较简单,专用性较强,仅为某台机床的上下料装置,是附属于该机床的专用机械手。随着工业技术的发展,制成了能够独立的按程序控制实现重复操作,适用范围比较广的“程序控制通用机械手”,简称通用机械手。由于通用机械手能很

汽车转向器设计及应用毕业论文

汽车转向器设计及应用毕业论文 目录 插图清单 (3) 表格清单 (3) 摘要 (4) Abstract (5) 第一章绪论 (6) 1.1 汽车转向器的功能及重要性 (6) 1.2 汽车转向器的主要性能参数 (6) 1.2.1转向器的效率 (6) 2.2.2传动比的变化特性 (7) 2.2.3转向盘自由行程 (9) 1.4 汽车转向器的工作原理 (10) 1.4.1 动力转向系统的工作原理 (10) 1.4.2 转阀式液压助力转向器工作原理 (11) 第二章总体方案设计 (12) 2.1 转向器设计的分类 (12) 2.1.1齿轮齿条式转向器 (12) 2.1.2 蜗杆曲柄销式转向器 (12) 2.1.3 循环球式转向器 (12) 2.2 转向器方案分析 (13) 2.3 防伤安全机构方案分析 (15) 第三章循环球式转向器的设计与计算 (17) 3.1 螺杆、钢球和螺母传动副 (18) 3.1.1 钢球中心距D、螺杆外径D1和螺母径D2 (19) 3.1.2 钢球直径d及数量n (19) 3.1.3 滚道截面 (20) 3.1.4 接触角 (20) 3.1.5 螺距P和螺旋线导程角 (21) 3.1.6 工作钢球圈数W (21) 3.1.7 导管径d1 (21) 3.2 齿条、齿扇传动副的设计 (21) 3.3 循环球式转向器零件强度计算 (23) 3.3.1钢球与滚道之间的接触应力σ (23) (24) 3.3.2 齿的弯曲应力 w 3.3.3 转向摇臂轴直径的确定 (24) 第四章动力转向机构的设计 (25)

4.1 对动力转向机构的要求 (25) 4.2 液压式动力转向机构布置方案分析 (25) 4.2.1 动力转向机构布置方案分析 (25) 4.3 液压式动力转向机构的计算 (27) 4.3.1 动力缸尺寸的计算 (27) 4.3.2 分配滑阀参数的选择 (27) 4.3.3 分配阀的回位弹簧 (27) 4.3.4 动力转向器的评价指标 (29) 第五章转向梯形 (31) 5.1 转向梯形结构方案分析 (31) 5.1.1 整体式转向梯形 (31) 5.1.2 断开式转向梯形 (32) 5.2整体式转向梯形机构优化设计 (33) 致谢 (37) 参考文献 (38)

软件工程毕业设计说明书内容

1 引言 1.1 课题的提出 近年来随着计算机科学技术的高速发展,计算机技术也被广泛应用在我们生活的诸多领域,当然它在高校的信息化进程中也发挥着重要作用。通过先进的计算机网络技术管理高校资源,不仅提高了工作效率,而且提高了管理水平,更提高了服务质量[1]。 高校校友是一个知识体系密集、信息资源丰富、社会能力强的群体,是对自身母校有着特殊感情的群体,是潜藏在母校之外的独有的重要宝贵资源,它以桥梁和纽带的角色有效建立起学校和社会之间的联系,在学校的发展过程中发挥着重要的作用[2,3]。 1.2 课题的现状及其发展 目前世界上各种形式的校友录网站大约28万多个之多,大致有以下几类:1)以收费方式分,有收费校友录和免费校友录,其中以后者居多;2)以提供校友录服务的网站分大致有三种,有大专院校自己网站的校友录;有专门单独的校友录网站;有综合网站上的校友录;3)还有网络校友录和手机校友录之分[4]。 中国校友录发展现状:下面选取两个具有代表性的校友录来看看中国校友录网站发展的具体情况。1)中国人校友录是目前各种校友录中最具代表性、权威性的校友录。它有完善的界面服务,在校友录基本的留言、相册等功能之上,中国校友录还开通了手机校友录,同学大搜捕,星级会员等增值服务。还包括了其他信息服务内容,可以进行天气预报,股市,热点新闻的信息定制,并针对毕业班同学为他们提供全面就业信息及咨询。2)世纪同学录,现有注册用户440914人,注册班级120864个(数据截止到2004年1月10日)[5]。 1.3 本课题的主要工作 本次课题设计的是中北大学校友录管理系统,主要工作任务是实现以下系统功能:校友成员注册、登录、留言,上传并浏览照片、通讯录、系统后台管理。具体实现:校友数据的添加、修改、删除、和查询,已完成校友数据的收集及进行数据电子化;用户之间的互动,包括上传照片,相互留言,查看信息;对中北大学校友录管理系统的用户权限进行管理,以保证数据资源的合理利用。通过提供完善的校

液压机械手设计毕业设计(论文)

液压机械手设计毕业设计 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

一、引言 1.1机械 液压通用机械手,就其本质上来说,属于工业机器人的范畴,机器人学是近几十年来迅速发展起来的一门综合学科。它集中了机械工程、电子工程、计算机科学、自动控制以及人工智能等多种学科的最新研究成果,体现了光机电一体化技术的最新成就,是当代科学技术发展最活跃的领域之一,也是我国科技界跟踪国际高技术发展的重要课题。 “机械手”(Machanical Hand):多数指附属于主机、程序固定的自动抓取、操作装臵(国内一般称作机械手或专用机械手)。如自动线、自动机的上下料,加工中心的自动换到的自动化装臵。 1.2机械手特点、结构与研究意义 1.2.1机器人的特点 机器人的主要特点体现在它的通用性和适应性等方面。 1.通用性 机器人的通用性指具有执行不同功能和完成多样简单任务的实际能力;通用性也意味着,机器人是可变的几何结构。或者说在机械结构上允许机器人执行不同的任务或以不同的方式完成同一工作。 2.适应性 机器人的适应性是指具有对环境的自适应能力,及机器人能够自主执行实现经规划的中间任务,而不管执行过程中所发生的没有预计到的环境变化。 1.2.2机器人的系统结构 一个机器人系统一般由四个相互作用的部分组成,即机械手、环境、任务和控制器。 工业机器人的本体机械系统即为通常的机械手装臵,他由肩、臂、腕、机身或行走机构组成,组合为一个相互依赖的运动机构。 环境即指机器人所处的周围状态,环境不仅由机和条件决定,而且有环境和它所包含的每个事物的全部自然特性决定。 机器人体系结构中的任务一般定义为环境的两种状态(初始状态和目标状态)间的差别,必须用适当的程序语言来描述,并能为计算机所理解。 机器人控制器一般为控制计算机,接收来自传感器的信号,对其进行数据处理,并按照预存信息,即机器人的状态及环境情况等,生成控制信号来驱动机器人的各个关节运动。

毕业设计论文三菱plc控制机械手设计系统

韶关市职工大学韶关市第二技师学院 毕业论文 题目:三菱plc控制机械手设计系统 系别:电气自动化工程系专业系别:14电气自动化双高 学生姓名:饶金荣 学号:42 指导教师:王建军老师 温惠萍老师 李集祥老师

摘要 可编程序控制器(PLC)是近年来发展极为迅速,应用面极广,以微处理器为核心,集微机技术、自动化技术、通信技术于一体的通用工业控制装置。PLC的广泛应用,已经给生产带来许多的好处,它具有功能齐全、使用方便、维护容易、通用性强、可靠性好、性能价格比高等特点,已在工业控制的各个领域得到了极为广泛的应用,成为实现工业自动化的一种强有力工具。比如plc控制的机械手在搬运工件方面的应用,以前一直采用人工搬运物料,不仅工人的劳动强度大,安全性差,而且效率低。本文分析了机械手和PLC之后,我们采用PLC控制的机械手进行物件的搬运来代替人力。 本文基于汇川公司的PLC,提出了PLC控制工件传送机械手PLC控制系统的设计方法。重点研究了实验开发系统的工作原理、硬件部分的主要构成,以及硬件部分的设计、安装调试和实验应用开发。讨论了汇川PLC指令系统、编程语言和程序设计方法,分析了汇川PLC专用编程软件在本系统中具体应用, 关键词:机械手,PLC,

第一章概述 1.1 PLC产生、定义及发展趋势 1.1.1 PLC(可编程逻辑控制器)的产生 PLC(可编程逻辑控制器)是20世纪60年代末期逐步发展起来的一种 以计算机技术为基础的新型工业控制装置。近几年来,PLC技术在各种工业过程控制、生产自动线控制及各类机电一体化设备控制中得到极其广泛的应用,成为工业自动化领域中的一项十分重要的应用技术。 在PLC出现以前,继电器控制曾得到广泛应用,在机电设备和工业过程控制领域中占有主导地位。但是继电器控制系统有明显的缺点;体积大,可靠性低,故障查找困难,特别是因为它是由硬接线逻辑构成的系统,造成了接线复杂,容易出故障,对生产工艺变化的适应性较差。 20世纪60年代未,美国最大的汽车制造商通用汽车公司(GM)为了适应汽车型号不断更新的需要,试图寻找一种新的生产线控制方法,使之尽可能地减少重新设计继电器控制系统的工作量以及尽量地减少控制系统 硬连接线的数量,以降低生产成本,缩短制造周期,减少生产线的故障率,从而有效地提高生产效率。当时,电子计算机的硬件己经基本完备,其主要功能是通过软件来实现的,因此具有灵活性、通用性等优点,但价格相对来说比较昂贵,于是他们想到了把继电器控制系统简单易懂、操作方便、价格便宜的长处与计算机灵活、通用的优点结合起来,用来制造一种新型的工业控制装置,并进而采用招标的方式,首先是美国数字设备公司(DEC)研制出符合上述想法的工业控制装置,命名为可编程逻辑控制器,即PLC( Programmable Logic Controller)。1969年,第一台PLC在GM公司汽车生产线上首次运行,成功地取代了沿用多年的继电器控制系统,尽管当时的PLC功能仅具有逻辑控制、定时、计数等功能,但却标志着一种新型装置问世。随着微电子技术和计算机技术的飞速发展,20世纪70年代中期又出现了微处理器和微型计算机,这些新技术很快也被用到PLC之中,使

相关文档
最新文档