贵州大学数控课程设计.docx

上传人:b****1 文档编号:2580528 上传时间:2023-05-04 格式:DOCX 页数:24 大小:2.28MB
下载 相关 举报
贵州大学数控课程设计.docx_第1页
第1页 / 共24页
贵州大学数控课程设计.docx_第2页
第2页 / 共24页
贵州大学数控课程设计.docx_第3页
第3页 / 共24页
贵州大学数控课程设计.docx_第4页
第4页 / 共24页
贵州大学数控课程设计.docx_第5页
第5页 / 共24页
贵州大学数控课程设计.docx_第6页
第6页 / 共24页
贵州大学数控课程设计.docx_第7页
第7页 / 共24页
贵州大学数控课程设计.docx_第8页
第8页 / 共24页
贵州大学数控课程设计.docx_第9页
第9页 / 共24页
贵州大学数控课程设计.docx_第10页
第10页 / 共24页
贵州大学数控课程设计.docx_第11页
第11页 / 共24页
贵州大学数控课程设计.docx_第12页
第12页 / 共24页
贵州大学数控课程设计.docx_第13页
第13页 / 共24页
贵州大学数控课程设计.docx_第14页
第14页 / 共24页
贵州大学数控课程设计.docx_第15页
第15页 / 共24页
贵州大学数控课程设计.docx_第16页
第16页 / 共24页
贵州大学数控课程设计.docx_第17页
第17页 / 共24页
贵州大学数控课程设计.docx_第18页
第18页 / 共24页
贵州大学数控课程设计.docx_第19页
第19页 / 共24页
贵州大学数控课程设计.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

贵州大学数控课程设计.docx

《贵州大学数控课程设计.docx》由会员分享,可在线阅读,更多相关《贵州大学数控课程设计.docx(24页珍藏版)》请在冰点文库上搜索。

贵州大学数控课程设计.docx

贵州大学数控课程设计

课程设计

设计题目:

六自由度机械手机电系统设计

 

课程名称:

机电系统课程设计

学院:

机械工程专业:

机械设计制造及其自动化

姓名:

幸贵武学号:

1008030218

年级:

2010任课教师:

蔡家斌杨绿

2013年12月30日

 

贵州大学本科课程设计

诚信责任书

本人郑重声明:

本人所呈交的课程论文(设计),是在导师的指导下独立进行研究所完成。

课程论文(设计)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。

特此声明。

 

论文(设计)作者签名:

日期:

贵州大学本科课程设计任务书

学生

信息

学号

1008030218

学院

机械学院

班级

姓名

幸贵武

专业

机械设计制造及其自动化

机自103

教师

信息

姓名

蔡家斌

职称

副教授

学历

硕士

教师

信息

姓名

杨绿

职称

讲师

学历

博士

任务书

发出时间

2013年12月9日

设计题目

六自由度机械手机电系统设计

论文(设计)起止时间

2013年12月16日——2014年1月3日

共需

周数

3

主要内容:

1进行六自由度机械手的机电系统设计

2结合设计任务的要求拟定总体机械和电气控制系统方案。

3根据拟定的机械系统方案进行六自由度机械手的机械结构方案设计。

4根据拟定的电气设计方案进行电气控制系统设计及相关元器件选用。

5完成工作台机械结构的结构简图和相关电气原理图的绘制,并绘制必要的控制程序流程图。

6编写设计说明书。

主要要求:

1方案拟定正确,设计计算根据来源可靠,计算数据准确无误。

2元气件选用正确规范符合国家颁布标准。

3相关电气图纸的绘制要求符合最新国家标准,图面整洁、质量高。

4图纸必须含机械手机械结构简图1张、电气控制原理框图、相关控制电路、程序流程图等电气原理图1~2张。

5课程设计说明书应阐述整个设计内容:

如课题来源现实意义、总体方案确定、系统框图分析、电气元件选用说明、以及机械和电气的其它部分。

说明书要突出重点,图文并茂、文字通畅、计算正确、字迹清晰、内容完整。

说明书页数不少于20页。

预期目标:

完成符合任务书要求的六自由度机械手机电系统设计,包括机械结构方案设计、控制系统设计及程序流程图设计等。

完成机械结构简图设计、电气控制原理图设计、相关程序流程图设计。

撰写不低于20页左右设计论文,并附录相关资料及设计图纸。

计划进程:

序号

计划时间

进程

1

12.2~12.4

课题调研及资料收集,研究问题及提出初步总体方案

2

12.5~12.7

总体方案论证及确定

3

12.8~12.12

机械部分方案论证确定及计算

4

12.13~12.16

电气部分方案论证确定及设计

5

12.16~

撰写论文及绘制相关图纸

主要参考文献:

[1]李斌.数控技术[M].华中科技大学出版社,2013.1

[2]韩建海.工业机器人[M],.华中科技大学出版社,2013.1

[3]张毅刚.单片机原理及应用[M].北京:

高等教育出版社,2004.1

[4]机电一体化技术手册编委会.机电一体化技术手册[M].北京:

机械工业出版社,1999.9

[5]陆昆,奚大顺,李之权等.电子设计技术[M].北京:

电子科技大学出版社,1998.10

 

 

目录

第一章前言3

1.1机器人技术概述………………3

1.2国外机器人技术发展情况………………3

1.3设计任务………………4

第二章总体设计5

2.1整体分析5

2.2各部分分析5

2.2.1机械部分5

2.2.2电气部分6

第三章机械结构设计7

3.1底部设计7

3.2臂部设计8

3.3腕部设计8

3.4手部设计8

第四章电气结构设计9

4.1计算机与8751通信9

4.28751控制舵机10

第五章程序分析12

 

六自由度机械手设计

第1章前言

1.1机器手简介

在工资水平较低的中国,制造业仍属于劳动力密集型,机械手的使用已经越来越普及。

那些电子和汽车业的欧美的跨国公司很早就在他们设在中国的工厂中引进了自动化生产。

但现在的变化是在那些分布在工业密集的华南、华东沿海地区的中国本土制造厂也开始对机械手表现出越来越浓厚的兴趣高,因为他们要面对工人的流失率高,以及交货周期缩短带来的挑战。

机械手可以确保运转周期的一致性,提高品质。

另外,另外,由于机械手的控制精确,还可以提高零件的精度。

机械手在工业中的应用十分广泛,如:

一、以提高生产过程中的自动化程度

应用机械手有利于实现材料的传送、工件的装卸、刀具的更换以及机器的装配等的自动化的程度,从而可以提高劳动生产率和降低生产成本。

二、以改善劳动条件,避免人身事故

在高温、高压、低温、低压、有灰尘、噪声、臭味、有放射性或有其他毒性污染以及工作空间狭窄的场合中,用人手直接操作是有危险或根本不可能的,而应用机械手即可部分或全部代替人安全的完成作业,使劳动条件得以改善。

在一些简单、重复,特别是较笨重的操作中,以机械手代替人进行工作,可以避免由于操作疲劳或疏忽而造成的人身事故。

三、可以减轻人力,并便于有节奏的生产

应用机械手代替人进行工作,这是直接减少人力的一个侧面,同时由于应用机械手可以连续的工作,这是减少人力的另一个侧面。

因此,在自动化机床的综合加工自动线上,目前几乎都设有机械手,以减少人力和更准确的控制生产的节拍,便于有节奏的进行工作生产。

1.2应用前景

工业机械手是近几十年发展起来的一种高科技自动化生产设备。

工业机械手的是工业机器人的一个重要分支。

它的特点是可通过编程来完成各种预期的作业任务,在构造和性能上兼有人和机器各自的优点,尤其体现了人的智能和适应性。

机械手作业的准确性和各种环境中完成作业的能力,在国民经济各领域有着广阔的发展前景。

机械手是在机械化,自动化生产过程中发展起来的一种新型装置。

在现代生产过程中,机械手被广泛的运用于自动生产线中,机械人的研制和生产已成为高技术邻域内,迅速发殿起来的一门新兴的技术,它更加促进了机械手的发展,使得机械手能更好地实现与机械化和自动化的有机结合。

机械手虽然目前还不如人手那样灵活,但它具有能不断重复工作和劳动,不知疲劳,不怕危险,抓举重物的力量比人手力大的特点,因此,机械手已受到许多部门的重视,并越来越广泛地得到了应用。

1.3机械手系统简介

机械手是一种具有高度的能动性和高度灵活性的自动化机器,是一种复杂的机电一体化设备。

本设计采用8751单片机直接控制,但单片机的输出电流太小,不能直接与步进电机相连,需要增加驱动电路,通过驱动电路形成控制系统,通过控制电机的转动角度,以实现机械手的不同功能。

该机器手采用串联式开链结构,机器手各连杆由旋转关节关节串联连接,各关节轴线相互平行或垂直。

关节的作用是使相互联接的两个连杆产生相对运动。

机器手各关节采用步进电机驱动,并通过软件编程和单片机实现对机器人的控制,使机器手能够在工作空间内任意位置精确定位。

1.4、机械手系统的组成及其控制过程

机械手由6个步进电机组成,实现机械手六自由度运动。

以AT89S52单片机作为系统控制核心,基于软件模拟串行通信程序,实现AT89S52串行通信,使其与电机驱动系统进行串行通信,同步的、连续的、精确的控制步进电机的转动,以实现精确定位、连续动作。

该机械手主要由三大部分组成:

(1)执行系统:

底座、铝质手臂、末端夹取装置等组成。

(2)驱动系统:

光电耦合器,功率放大器,脉冲发生器等组成。

(3)控制系统:

8751单片机,晶振电路等组成。

机械手系统具体的操作过程:

在计算机上编号程序,利用keil软件编译生成hex文件,通过转串口下载线将计算机USB端口与机械人的控制主单元AT89S52单片机的下载端口连接,使用转串口烧程序软件将编好的程序下载烧录到单片机中,AT89S52单片机产生PWM脉冲控制驱动系统,通过驱动系统在各个端口产生PWM信号,利用占空比的不同驱动六个关节的电机到指定的位置,实现机械手到不同位置,不同姿态的控制。

1.5六自由度机械手总体方案框图设计

根据系统要求画出基于8751单片机控制的总体方案框图如图2-1所示:

 

第2章总体设计

2.1整体分析

六自由度机械手由舵机、铝合金支架、单片机、控制板等部分组成,它有6个伺服电机,六个舵机分别控制六个转动关节,实现机械手六自由度运动。

每个关节设计最大转动角度,以此来控制机械臂的运动范围,机械手应有装夹功能,因此设计一个机械式手钳机构;机械手采用主从控制方式,以8751单片机作为系统控制核心,控制器控制舵机的工作,基于软件模拟串行通信程序,实现8751串行通信,使其同时与显示终端、PSC伺服控制器进行串行通信,同步的、连续的、精确的控制伺服的转动,以实现精确定位、连续动作

机械手采用主从控制方式,以AT89S52为主控制器,PSC伺服控制器为从控制器。

实验教学平台控制系统由主控制器、伺服电机控制器PSC、FYD12864-0402B液晶显示模块、红外传感器及6个伺服电机等部分组成,其系统组成框图如图2-1所示。

图2-1

六自由度机械手实物图如下:

2.2各部分分析

六自由度机械手分为两个部分:

机械部分和电气部分。

机械部分主要是机械手的结构,关节安排,材料选择等;而电气部分主要是机械手的控制选择,运动分析,程序指令,电路布置。

电气部分控制机械部分实现规定的各项运动。

2.2.1机械部分

六自由度机械手的机械结构简图如图所示

机械部分由机身、臂部、腕部和手部四个部分组成,共有6个自由度,每个关节都由一个独立的舵机控制,其中H1能够实现机身360°的旋转,臂部H2和H3用来控制机械手在空间的位置,腕部的H4、H5用来控制手部的的姿态,而H6则用来控制机械手手部的开合。

各个关节中,H1和H5为360°转动关节,其余都为受限关节,只能在一定角度内转动。

六自由度机械手的关节布置简图如下,该机械手臂有6个关节,每一个关节的运动控制都是用舵机来实现的,只有一个自由度。

2.2.2电气部分

六自由度机械手电气部分由控制器模块,舵机,串行总线,驱动模块和通讯模块组成。

首先用keil软件编辑程序,调试正确无误后输出.hex格式文件,再用下载好的progisp下载软件将.hex格式文件烧到控制器上,然后运行程序,控制器产生的控制信号传输到舵机控制芯片,由P8X32A-M44分析信号后,发出6个舵机控制信号,通过YE08芯片将其电压放大,传输进舵机控制口,舵机带动各个关节运动,使机械手按照预定的动作运动。

 

第3章机械结构设计

机械结构是六自由度机械手的本体,其设计应该遵循灵活、简洁的原则。

三维模型简图如下:

3.1底部设计

底座用于支承和连接若干部件的基础零件。

它承受其他零部件的重量和工作载荷,又起到保证各零部件相对位置的基础作用。

底座多采用铸件,其基本特点是尺寸相对于其他零件较大。

其次底座的变形和振动将直接影响操作的平稳性,故六自由度机械手底部做成圆盘状,和臂部相连接,对臂部起支撑作用。

底部只做旋转运动,结构虽然简单,但是它能带动机械手臂部做360°旋转,并且圆盘机构比较稳定,承载能力较强,适合于360°运转。

机身设计的要求:

①机身要有足够的刚度、强度和稳定性;②运动要灵活,用于实现升级运动的导向套长度不宜过短,以避免发生卡死现象;③驱动方式要适宜;④结构布置要合理。

3.2臂部设计

臂部的结构形式必须根据机器人的运动形式、抓取动作自由度、运动精度等因素来确定。

六自由度机械手臂部由大臂和小臂组成,具备伸缩功能,共有2个自由度,在运动时,直接承受腕部、手部和工件的载荷,但由于本机械载荷较小,在设计时不用过多考虑此因素,但在进行一般机械设计时,臂部载荷能力的计算非常重要。

臂部是工业机器人的主要执行部件,除支承作用外,它还负责改变手部的空间位置。

臂部设计的基本要求:

①手臂应具有足够的承载能力和刚度;②导向性要好;③重量和转动惯量要小;④运动要平稳、定位精度要高。

臂部的常用结构

(1)手臂直线运动机构

机械人手臂的伸缩、横向移动均属于直线运动。

实现手臂往复直线运动的机构形式比较多,长用的有液压缸、齿轮齿条机构、丝杠螺母机构及连杆机构等。

由于液压缸体积小、重量轻,因而在机器人的手臂结构中应用比较多。

(2)手臂回转运动机构

实现机器人手臂回转运动的机构形式多种多样,常用的有叶片式回转缸、齿轮传动机构、链轮传动机构、活塞缸和连杆机构等。

3.3腕部设计

工业机器人的腕部是连接手部与臂部的部件,起支承手部的作用。

机器人一般要具有6个自由度才能使手部达到目标位置和处于期望的姿态,手腕的自由度主要用来实现所期望的姿态。

工业机器人的腕部是连接手部与臂部的部件,起支承手部的作用。

腕部的分类:

(1)按自由度数目分类

①单自由度手腕

②二自由度手腕由一个B关节和一个R关节组成的BR手腕,这也是最为常见的二自由度手腕;

③三自由度手腕

(2)按驱动方式分类

①直接驱动手腕是将驱动元件直接装在手腕上,这样结构十分紧凑

②远距离传动手腕

3.4手部设计

手部是机械手用来抓握物品的机构,具有一定的人手功能。

在设计手部时,需要充分考虑抓取物品的性质,以此来确定手部结构的样式。

工业机器人的手部是装在工业机器人手腕上直接抓握工件或执行作业的部件。

工业机器人手部有以下一些特点。

(1)手部与手腕相连处可拆卸。

手部与手腕有机械接口。

也可能有电、气、液的接头,当工业机器人作业对象不同时,可以方便地拆卸和更换手部。

(2)手部是工业机器人的末端操作器。

它可以像人手哪样具有手指,也可以不具备手指。

(3)手部的通用性比较差。

工业机器人的手部通常是专用的装置,一种手爪往往只能抓握一种工件或几种在形状、尺寸、质量等方面相近似的工件,只能执行一种作业。

(4)手部是一个独立的部件,假如把手腕归属于臂部,那么,工业机器人机械系统的三大件就是机身、臂部和手部。

手部是决定整个工业机器人作业完成好坏、作业柔性好坏的关键部件之一。

手部的分类

由于手部要完成的作业任务繁多,手部的类型也多种多样。

根据其用途,手部可分为手爪和工具两大类。

手爪具有一定的通用性,它的主要功能是抓住工件、握持工件、释放工件。

工具用于进行某种作业。

根据其夹持原理,手部又可分为机械钳爪和吸附式两大类。

其中吸附式手部还可以分为磁力吸附式和真空吸附式两类。

吸附式手部机构的功能超出了人手的功能范围。

在实际应用中,也有少数特殊形式的手部。

 

第4章电气结构设计

电气部分主要由计算机、8751控制器、舵机驱动模块组成。

在计算机上编写好程序后输出.hex文件格式源程序,将其通过RS-232串行总线载入8751单片机,打开电源开关后由8751产生六路占空比可调的PWM信号,PWM信号输出到舵机,控制舵机按程序规定的步骤运动,从而带动机械手各关节的转动,由此来使机械手完成规定的动作。

由于单片机系统是一个数字系统,其控制信号的变化完全依靠硬件计数,所以受外界干扰较小,整个系统工作可靠。

4.1计算机与8751通信

计算机与8751之间通过串行总线RS-232来联系,它是计算机与单片机之间信息传递的枢纽,一切数据的传输必需由它完成。

本实验只需将用计算机编好的程序通过RS-232串行总线烧入单片机,然后由单片机控制舵机运行即可。

8751为ATMEL所生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器,它与80C51产品指令和引脚完全兼容,因此在嵌入式控制应用系统中应用广泛。

RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。

单片机和RS232的电平标准是不一样的,单片机与电脑串口通信应该遵循下面的连接方式:

在单片机与上位机给出的RS232口之间通过电平转换电路实现TTL电平与RS232电平之间的转换。

8751引脚图

4.28751控制舵机

单片机控制舵机具有简单、精度高、成本低、体积小的特点,并可根据不同的舵机数量加以灵活应用。

本次实验中8751产生的占空比可调的PWM信号经由驱动模块的接收通道进入信号解调电路进行解调,获得一个直流偏置电压。

该直流偏置电压与电位器的电压比较,获得电压差送入电机驱动集成电路,以驱动电机正反转。

直到电压差为0,电机停止转动。

舵机主要由外壳、减速齿轮组、电机、电位器、控制电路组成。

减速齿轮组由马达驱动,其终端、输出端带动一个线性的比例电位器作位置检测该电位器把转角坐标转换为一比例电压反馈给控制线路板,控制线路板将其与输入的控制脉冲信号比较。

产生纠正脉冲并驱动马达正向或反向地转动,使齿轮组的输出位置与期望值相符,令纠正脉冲趋于为0,从而达到舵机精确定位的目的。

本次实验舵机驱动模块采用的是parallax公司生产的16路舵机控制模块,其包括16路舵机控制线接口、单片机通信接口、舵机驱动电源接口、开关、复位键、控制芯片等部分组成。

8751控制模块与舵机驱动模块

 

第五章程序分析

六自由度机械手控制程序如下,改变codearmdata[]数组中的数据即可调整各转动副的转动角度。

程序主函数只有最后很小的一部分,主程序通过调用各个子函数完成程序的运行。

这样做可有效的较少主程序的大小,提高程序的运行速度。

首先运行子函数uart_Init(),它主要负责单片机串口中断驱动程序、发送和接收中断信号、初始化串行口和UART波特率函数。

下一个子程序robotmove()主要用于舵机的转角控制。

数组armdata[]中的数据为占空比数,子程序robotmove()通过读取其中的数据改变脉冲宽度而控制舵机。

子程序delay_nms()为各个舵机动作延迟时间控制。

#include

#include

#defineucharunsignedchar

#defineRXDP12

#defineTXDP12

#defineWRDYN44//写延时

#defineRDDYN43//读延时

//延时程序*

voidDelay2cp(unsignedchari)

{

while(--i);//刚好两个指令周期。

}

//往串口写一个字节

voidWByte(ucharin)

{

uchari=8;

TXD=(bit)0;//发送启始位

Delay2cp(183);//发送8位数据位

while(i--)

{

TXD=(bit)(in&0x01);//先传低位

Delay2cp(176);

in=in>>1;

}

//发送校验位(无)

TXD=(bit)1;//发送结束位

Delay2cp(190);

}

//从串口读一个字节

ucharRByte(void)

{

ucharOut=0;

uchari=8;

uchartemp=RDDYN;//发送8位数据位

while(RXD);

Delay2cp(187);//此处注意,等过起始位

Delay2cp(94);

while(i--)

{

Out>>=1;

if(RXD)

Out|=0x80;//先收低位

Delay2cp(179);//(96-26)/2,循环共占用26个指令周期

}

while(--temp)//在指定的时间内搜寻结束位。

{

Delay2cp

(1);

if(RXD)

break;//收到结束位便退出

}

returnOut;

}

intmotormove(charchannel,charramp,intposition)

{

unsignedchari;

ucharcmd[8]="!

SC";

cmd[3]=channel;

cmd[4]=ramp;

cmd[5]=position;

cmd[6]=position>>8;

cmd[7]=0x0D;

for(i=0;i<8;i++)

{

WByte(cmd[i]);

}

}

//BseBcptelbwwrstwrstRgrppr

intcodearmdata[]={450,800,800,540,750,1250,

450,800,800,540,750,1250,

450,800,650,900,750,1250,

450,800,650,950,750,550,

450,800,800,540,750,550,

450,800,650,950,750,550,

450,800,650,990,750,1250,

450,800,800,540,750,1250,

450,800,630,1000,750,1250,

450,800,640,1000,750,550,

450,800,800,540,750,550,

450,800,800,540,750,550,

450,800,640,1000,750,550,

450,800,640,950,750,1250,

450,800,800,540,750,1250,0xff};

intcodedelay[]={20,20,15,20,30,10,10,10,30,20,10,30,10,10,10};

introbotmove(inti,int*movedata)

{

ucharj;

while(*movedata!

=0xff)

{

for(j=0;j

{

motormove(0x00,15,*movedata++);

delay_nms(delay[j/6]);

motormove(0x01,15,*movedata++);

delay_nms(delay[j/6]);

motormove(0x02,15,*movedata++);

delay_nms(delay[j/6]);

motormove(0x03,12,*movedata++);

delay_nms(delay[j/6]);

motormove(0x04,15,*movedata++);

delay_nms(delay[j/6]);

motormove(0x05,15,*movedata++);

delay_nms(delay[j/6]);

delay_nms(2000);//让所有动作执行完

}

}

}

intmain(void)

{

uart_Init();

robotmove(90,armdata);

del

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2