《毕业设计(论文)-基于单片机的机械手控制系统设计(17页).doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-基于单片机的机械手控制系统设计(17页).doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-毕业设计(论文)-基于单片机的机械手控制系统设计-第 - 14 - 页渤海船舶职业学院毕业设计(论文)题目:基于单片机的机械手控制系统设计 系:机电工程系 专 业:机电一体化 姓名: 指导教师:班级: 评阅教师:学号:04 完成日期:2014.6.6毕业设计说明书(论文)中文摘要摘要:机械手技术涉及到电子、机械学、自动控制技术、传感器技术和计算机技术等科学领域,是一门跨学科综合技术。随着工业自动化发展的需要,机械手在工业应用中越来越重要。文章主要叙述了机械手的设计过程 ,本文中介绍了机械手的设计理论与方法。本设计以AT89C51 单片机为核心,采用LMD18200 电机控制芯片达到控制直流电
2、机的启停、速度和方向,完成了筛选机械手基本要求和发挥部分的要求。在筛选机械手设计中,采用了PWM 技术对电机进行控制,通过对占空比的计算达到精确调速的目的。关键词:机械手;AT89C51;LMD18200;PWM技术;电机控制目 录第一章 前言 1 1.1 机械手概述1 第二章 总体方案设计 3 2.1 设计要求 3 2.2 基本设计思路 3 第三章 硬件结构设计 5 3.1 机械手尺寸的确定 5 3.2 传动部分设计 5 第四章 软件电路部分设计 9 4.1 单片机的选择 9 4.2 接口电路 10 4.3 电路图 12 4.4 程序流程14 4.5 程序编写.14结论 20 参考文献21
3、第一章 前言1.1 机械手概述机械化、自动化已成在现代工业中突出的主题。化工等连续性生产过程的自动化已基本得到解决。但在机械工业中,加工、装配等生产是不连续的,机器人的出现并得到应用,为这些作业的机械化奠定了良好的基础。机械手,多数是指程序可变(编)的独立的自动抓取、搬运工件、操作工具的装置(国内称作工业机械手或通用机械手)。机械手是一种具有人体上肢的部分功能,工作程序固定的自动化装置。机械手具有结构简单、成本低廉、维修容易的优势,但功能较少,适应性较差。目前我国常把具有上述特点的机械手称为专用机械手,而把工业机械手称为通用机械手。简而言之,机械手就是用机器代替人手,把工件由某个地方移向指定的
4、工作位置,或按照工作要求以操纵工件进行加工。一般而言,机械手通常就是由执行机构、驱动传动系统和控制系统这三部分组成,如图 1-1 所示。图1-1 机械手的一般组成对于现代智能机械手而言,还具有智能系统,主要是感觉装置、视觉装置和语言识别装置等。目前研究主要集中在赋予机械手“眼睛”,使它能识别物体和躲避障碍物,以及机械手的触觉装置。机器人的这些组成部分并不是各自独立的,或者说并不是简单的叠加在一起,从而构成一个机械手的。要实现机械手所期望实现的功能,机械手的各部分之间必然还存在着相互关联、相互影响和相互制约。它们之间的相互关系如图1-2 所示。图1-2 机械手控制系统图机械手的机械系统主要由执行
5、机构和驱动传动系统组成。执行机构是机械手赖以完成工作任务的实体,通常由连杆和关节组成,由驱动传动系统提供动力,按控制系统的要求完成工作任务。驱动传动系统主要包括驱动机构和传动系统。驱动机构提供机械手各关节所需要的动力,传动系统则将驱动力转换为满足机械手各关节力矩和运动所要求的驱动力或力矩。有的文献则把机械手分为机械系统、驱动系统和控制系统三大部分。其中的机械系统又叫操作机(Manipulator),相当于本文中的执行机构部分。第二章 总体方案设计2.1 设计要求生产线上有红黑两种直径为2cm 厚1cm 的圆铁片,设计一种机械手,该手能自动筛选出红色铁片,并把红色铁片放到指定位置。机械手有上行/
6、下行、左行/右行、放松/夹紧几个运行方式。并要求机械手有判别铁片颜色的功能,且能准确把握铁片位置、重量、形状等因素。该手运行路径合理,接近指定位置时能够减速运行。整个过程无人工操作,系统通过传感装置检测工件,工作结束后能自动停止。2.2 基本设计思路总体设计框图如下: 图2-1 总体设计框图1.CPUCPU 部分有两种选择:单片机控制和PLC 控制。2.传动机构传动机构种类繁多,常见的有齿轮传动、齿条传动、丝杆传动、链条传动。由于一般的电机驱动系统输出的力矩较小,需要通过传动机构来增加力矩,提高带负载能力。对机械手的传动机构的一般要求有:(1)结构紧凑,即具有相同的传动功率和传动比时体积最小,
7、重量最轻;(2)传动刚度大,即由驱动器的输出轴到连杆关节的转轴在相同的扭矩时角度变形要小,这样可以提高整机的固有频率,并大大减轻整机的低频振动;(3)回差要小,即由正转到反转时空行程要小,这样可以得到较高的位置控制精度;(4)寿命长、价格低。3.机械手1.机械手的组成机械手一般由执行机构、控制系统、驱动系统三个部分组成。(1)执行机构1) 手腕 手腕是联接手臂与末端执行器的部件,用以调整末端执行器的方位和姿态。2) 手臂 手臂是支承手腕和末端执行器的部件。它由动力关节和连杆组成,用来改变末端执行器的位置。3) 机座 机座是机械手的基础部件,并承受相应的载荷,机座分为固定式和移动式两类。(2)控
8、制系统控制系统用来控制机械手按规定要求动作,可分为开环控制系统和闭环控制系统。大多数工业机械手采用计算机控制,这类控制系统分为决策级,策略级和执行级三级:决策级的功能是识别环境、建立模型、将工作任务分解为基本动作序列;策略级将基本动作变为关节坐标协调变化的规律,分配给各关节的伺服系统;执行级给出各关节伺服系统的具体指令。(3)驱动系统驱动系统是按照控制系统发出的指令将信号放大,驱动执行机构运动的传动装置。常用的由电气、液压、气动和机械等四种驱动方式。除此之外,机械手可以配置多种传感器(如位置、力,触觉,视觉等传感器),用以检测其运动位置和工作状态。第三章 硬件结构设计3.1 机械手尺寸的确定由
9、于本次设计对工作场地要求并没有明确的限制,因此机械手的尺寸也就没有明确的规定,为了设计的方便,将机械手大臂有效距离长为280mm,小臂有效距离长为170mm,机械手3D图如下:3-1 机械手图3.2 传动部分设计(1) 机械手是有三台伺服电机驱动:电机M1 控制大臂在Z 轴旋转摆动,电机M2 控制小臂在Z 轴的旋转摆动,电机C 控制末端执行器在Z 轴的上下移动。为了设计的方便,控制方式采用点位控制。通过分别控制三台电机的正反转来确定末端执行器在空间上的具体位置。由于三台电机不是同时控制,因此不存在相互间的干扰,从而增强了整个系统的稳定性。(2) 具体传动环节:基座部分装有服电机M1,通过齿轮传
10、动控制大臂旋转,基座与大臂底座用轴承连接;大臂座装有伺服电机M2,通过齿轮、传动控制小臂的旋转摆动;末端执行器部分装有伺服电机M3,同样通过齿轮、丝杆传动控制末端执行器的上下移动。(3) 伺服电机一个伺服电机内部包括了一个小型直流马达;一组变速齿轮组;一个反馈可调电位器;及一块电子控制板。其中,高速转动的直流马达提供了原始动力,带动变速(减速)齿轮组,使之产生高扭力的输出,齿轮组的变速比愈大,伺服马达的输出扭力也愈大,也就是说越能承受更大的重量,但转动的速度也愈低图3-2 伺服电机图(4)微行伺服马达的工作原理一个微型伺服马达是一个典型闭环反馈系统,其原理可由下图表示:图3-3 伺服电机原理图
11、减速齿轮组由马达驱动,其终端(输出端)带动一个线性的比例电位器作位置检测,该电位器把转角坐标转换为一比例电压反馈给控制线路板,控制线路板将其与输入的控制脉冲信号比较,产生纠正脉冲,并驱动马达正向或反向地转动,使齿轮组的输出位置与期望值相符,令纠正脉冲趋于为0,从而达到使伺服马达精确定位的目的。(5)伺服马达的控制标准的微型伺服马达有三条控制线,分别为:电源、地及控制。电源线与地线用于提供内部的直流马达及控制线路所需的能源,电压通常介于4V6V 之间,该电源应尽可能与处理系统的电源隔离(因为伺服马达会产生噪音)。甚至小伺服马达在重负载时也会拉低放大器的电压,所以整个系统的电源供应的比例必须合理。
12、输入一个周期性的正向脉冲信号,这个周期性脉冲信号的高电平时间通常在1ms2ms 之间,而低电平时间应在5ms 到20ms 之间,并不很严格,下表表示出一个典型的20ms 周期性脉冲的正脉冲宽度与微型伺服马达的输出臂位置的关系:表3-1位置关系图(6)选用的伺服马达我选用的伺服马达为TowPro 的,型号为SG303。其主要技术参数如下:转速:0.23 秒60 度。l 力矩:3.2kgcm。l 尺寸:40.4mm19.8mm36mm。l 重量:0.6kg。l 12V 和24V 电源供电。控制周期脉冲宽度为20ms。送出不同的正脉冲宽度是,就可以得到不同的控制效果。控制正脉冲宽度如下:(7)增量式
13、编码器编码器是把角位移或直线位移转换成电信号的一种装置。前者成为码盘,后者称码尺按照读出方式编码器可以分为接触式和非接触式两种接触式采用电刷输出,一电刷接触导电区或绝缘区来表示代码的状态是“”还是“”;非接触式的接受敏感元件是光敏元件或磁敏元件,采用光敏元件时以透光区和不透光区来表示代码的状态是“”还是“”。第四章 电路部分设计4.1 单片机的选择(1) 单片机的概念单片机是将计算机的基本部件微型化并集成到一块芯片上的微型计算机。通常在芯片内含有CPU、ROM、RAM、并行I/O 口、串行口、定时/计数器、中断控制系统、系统时钟及系统总线等。(2) 单片机特点1) 优异的性能价格比。2) 高、
14、体积小、可靠性高。单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了计算机的可靠性与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。3) 控制功能强。为了满足工业控制的要求,一般单片机的指令系统种均有极丰富的转移指令、I/O 口的逻辑操作及位处理功能,单片机的逻辑控制功能及运行速度均高于同一档次的微机。4) 低功耗、低电压,便于生产便携式产品。5) 单片机的系统扩展和系统配置叫典型、规范,容易构成各种规模的应用系统。(3) 单片机硬件结构1) 89C52 系列单片机基本配置如下:a) 微处理器该单片机中有一个8 位的微处理
15、器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。b) 数据存储器片内为128 个字节,片外最多可外扩至64k 字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。c) 程序存储器由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64k 字节。d) 中断系统具有5 个中断源,2 级中断优先权。e) 定时器/计数器片内有2 个16 位的定时器/计数器, 具有四种工作方式。f) 串行口1 个全双
16、工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O 口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。g) P1 口、P2 口、P3 口、P4 口为4 个并行8 位I/O 口。h) 特殊功能寄存器共有21 个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM 区。2) 引脚及其功能a) 电源及时钟引脚VCC:接+5V 电源正端;VSS:接+5V 电源地端;X1:接外部晶体振荡器的一端;X2:接外部晶体振荡器的另一端。b) 控制引脚RESET:单片机上电复位端。ALE:当访问外部存储器时,ALE 一每
17、机器周期两次的信号输出,用于锁存出现在P0 口的低8 位地址。PSEN:为片外程序存储器读选通信号输出端。EA :为访问外部程序存储器控制信号,低电平有效。c) 输入/输出引脚P3 口的第二功能:P3.0:RXD,串行输入通道;P3.1:TXD,串行输出通道;P3.2:INT0,外部中断0;P3.3:INT1,外部中断1;P3.4:T0,计数器0 外部输入;P3.5:T1,计数器1 外部输入;P3.6:WR ,外部数据存储器写选通;P3.7: RD,外部数据存储器读选通。图4-1 89c51 引脚图4.2 接口电路1.串行通信的基本原理计算机的数据传送有并行和串行两种方式。并行数据传送的特点是
18、:各数据同时传送,传送速度快,效率高。但并行数据传送有多少数据位就需要多少根数据线,因此传送成本高。并行数据传送的距离通常小于30 米,计算机内部的数据传送通常都是并行的;串行数据传送的特点是:数据传送按位顺序进行,最少只需一根线即可完成,成本低但速度慢。计算机与外界的数据传送大多是串行的,其传送的距离可以从几米到几千公里。串行通信又分为异步和同步两种方式。单片机中使用的串行通信通常都是异步方式的。(1)串行通信的数据传送格式异步串行通信以字符为单位,即一个一个字符地传送。其字符格式通常表示如下:它用一个起始位表示字符的开始,用停止位表示字符的结束构成一帧。异步通信的特点是每次只传送一个字符,
19、每个字符由起始位(规定为低电平)、数据位、奇偶校验位、停止位(规定为高电平12 位)组成。由于单片机的停止位规定为1 位,为了与单片机相匹配,PC 机的一帧数据的停止位我们采用1 位。(2)串行通信的收发过程发送方发送数据时,通过发送低电平起始位开始一个字符的传送,起始位之后便按特定的速率发送数据位(包括奇偶校验位),当最后一位数(对于采用奇偶个高电平停止位用以标志一个字符传送结束,这样就完成了一帧数据发送。如果不再发送新数据或数据尚未准备好,就将传输线钳在高电平状态。接收方不断检测传输线的电平状态,当发现传输线由高电平变为低电平时(起始位标志位),即认为有数据传入,进入接收状态,然后以相同的
20、速率检测传输线的电平状态,接收随后送来的数据位,奇偶校验位和停止位。可见在异步通信方式中,发送方是靠控制传输线的电平状态来完成数据的发送。接收方通过不断检测数据线的状态来完成数据的接收,只要发送率和接收检测速率相同,即能准确接收和发送数据。发送与接收设备可以使用各自的时钟源完成数据的发送与接收,无需使用相同的时钟信号。(3)串行通信的传送速率传送速率用于说明数据传送的快慢。在串行通信中,数据是按位进行传送的,因此传送速率用每秒钟传送二进制数码的位数来表示,称之为波特率。在串行通信中常用波特率来衡量通信速率的快慢,每秒钟传送一位就是一波特,一般异步通信波特率为110KHZ。在选择通信的波特率时,
21、不要盲目追高,要以满足数据传输要求为原则。因为波特率越高,对发送和接收时钟信号频率的一致性要求就越高。(4)串行通信的电平转换PC 机与单片机是通过串行口进行通信的。由于单片机的输入、输出是TTL 电平(+5V 表示逻辑1,电平低于2V 便不能被识别为逻辑1;0V 表示逻辑0),TTL电平一般不能用于远距离传输,因为传输过程中电平的衰减会使传输数据不准确。而PC 机配置的是RS232 串行接口,因此,单片机与PC 机之间进行通信时,要进行电平的转换,需要将TTL 电平转换为RS232 电平(-5V-15V 表示逻辑1,+5V+15V 表示逻辑0),在传输线上传送的RS232 电平可高达 12V
22、,比TTL 电平有更强的抗衰减能力及抗干扰能力,可用于远距离传输。常用的电平转换芯片为MAX2232,此芯片能实现以上两种电平的相互转换。另外,信号传输的介质最好使用双绞线,有利于抑制外界共模信号的干扰。2.单片机与PC 机串行通信实现手段由于PC 机中集成了串行异步通信的可编程芯片8250,我们可以通过PC 机的串行通信口COM1 或COM2 对它进行控制,因而不需要再单独做实验板。我们可以把单片机的内部电平转换接口与PC 机的串行通信口COM1 或COM2 通过串行连接线连接起来,然后用软件对它们进行初始化,使它们运行各自的接收或发送程序。在具体编程的时候,我们可以实现很多的功能。例如,我
23、们可以从PC 机和单片机中读其RAM 或ROM 的内容,对它们进行在线修改。PC 机的程序可以用汇编程序MASM6.0、VB、C+Bilder 或VC+进行编写。 控制电路与计算机通讯能够在计算机上作监控界面,使机械手控制更加人性化。 图4-3 串行通讯电路4.3 电路图绘制图4-4系统电路图控制(1) 电路说明:PC 机通过电频转换器将程序传送至单片机,单片机通过驱动芯片控制步进电机正反转,使传感器到达指定位置。传感器检测工件颜色,并发射相应信号给单片机(红色,进行下一步;黑色,停止、延时;无反射,程序结束)。单片机通过已设定的程序完成相应步骤。(2) 单片机电路1) 看门狗复位电路复位操作
24、通常有两种基本形式:上电复位和按钮复位。本电路中采用的是上电复位,其工作原理为:上电瞬间,RC 电路充电,RST 引脚端出现正脉冲,只要RST 端保持两个时钟周期以上的高电平,就能使单片机有效的复位。看门狗又叫 watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗,一个输出到MCU 的RST 端,MCU 正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就回给出一个复位信号到MCU,是MCU 复位. 防止MCU 死机. 看门狗的作用就是防止程序发生死循环,或者说程序跑飞。工作原理:在系统运行
25、以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。所以在使用有看门狗的芯片时要注意清看门狗。硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC 指针不能回来。那么定时时间到后就会使单片机复位。看门狗复位电路图如下。图4-5 看门狗复位电路2) 晶振电路MCS-51 系列单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1 和XTAL2 外接晶体振荡器,就构成了内部振荡电路,如下
26、图所示。图中C1、C2 起稳定振荡频率、快速起振的作用,电容值一般为530pF。晶振常选用频率为6MHz、12MHz 或24MHz 的,采用串口时常使用频率为11.0592MHz 的晶振。内部振荡方式所得到的时钟信号比较稳定,应用较多。图4-6 振荡电路4.4 程序流程程序开始运行后,系统初始化,机械手回到原始位置。传送带将工件运送过来,到达指定位置后延时1s。这时,传感器开始检验,向工件位置发射光线,通过是否有收到反射光来判断工件是否到达指定位置。如果有发射光,则运行下一步程序,开始搬运工件。如此循环,直到传感器不再接受到反射光,则加工停止,程序结束。4.5 程序编写 #include#de
27、fine TH0_TL0 (65536-1000)/设定中断的间隔时长unsigned char count0 = 0;unsigned char count1 = 0;bit Flag = 1;/电机正反转标志位,1 正转,0 反转sbit Key_add=P3 2; /电机减速sbit Key_dec=P3 3; /电机加速sbit Key_turn=P3 4; /电机换向sbit PWM1=P3 6;/PWM 通道 1sbit PWM2=P3 7;/PWM 通道 2unsigned char Time_delay;/函数声明void Delay(unsigned char x);void
28、 Motor_speed_high(void);void Motor_speed_low(void);void Motor_turn(void);void Timer0_init(void);void Delay(unsigned char x)/延时处理Time_delay = x;while(Time_delay != 0);void Timer0_int(void) interrupt 1 using 1/定时0 中断处理TR0 = 0;TL0 += (TH0_TL0 + 9) % 256;TH0 += (TH0_TL0 + 9) / 256 + (char)CY;TR0 = 1;if(
29、Time_delay != 0)/延时函数用Time_delay-;if(Flag = 1)/电机正转PWM1 = 0;if(+count1 = 100)count1=0;else /电机反转PWM2 = 0;if(+count1 = 100)count1=0;/反转void Motor_speed_high(void)/按键处理加pwm 占空比,电机加速 if(Key_add=0)Delay(10);if(Key_add=0)count0 += 5;if(count0 = 100)count0 = 100;while(Key_add = 0);/等待键松开void Motor_speed_l
30、ow(void)/按键处理减pwm 占空比,电机减速void main(void)/主函数Timer0_init(); while(1)Motor_turn();Motor_speed_high(); Motor_speed_low(); 结论在设计过程中给我印象最深的是作为一名设计人员,面对一项设计任务时,不仅要能够熟练的运用相关专业知识,同时还要考虑到在实际应用中所面对的场地、环境、资金和实际加工等一系列问题。我考虑到采用液压、气压传动。但是,液压、气压系统对环境要求高,且对密封性要求严格,同时要求配置液压泵、气压泵等相关装置。而气体的可压缩性导致了整个装置的精度较低。于是改用伺服电机驱动
31、。在确定了电机驱动后,相应的设计思路也逐渐清晰了。于是,我设计了一套驱动电路,本以为这样电路设计主要部分就基本完成。但是,在审查后发现了电路的一些缺点,并认识到可以通过相应的驱动芯片进行驱动。这套方案不但极大程度上简化了整个电路部分,同时驱动能力还有了一定的提高。参考文献1 张建民.机电一体化系统设计M.北京:北京理工大学出版社,19962 陈光东. 单片微型计算机原理与接口技术M.武昌: 华中理工大学出版社,19993 刘鑫.工业控制计算机的设计技术J.自动化博览,2001(6)4 孙克梅. 直流伺服电机的单片机控制及应用J. 沈阳航空工业学院学报,2003(2)5 邓星钟.机电传动控制M.
32、武昌:华中科技大学出版社,20016 张建民.机电一体化系统设计M.北京:北京理工大学出版社,20007 廖常初.可编程序控制器的编程方法与工程应用M.重庆:重庆大学出版社,20018 周凯.精密数控机床的转角-线位移双闭环位置控制系统J.中国机械工程.1998(8)9 刘群山, 李志勇, 王勇.冲床送料装置的单片机自适应控制J.组合机床与自动化加工技术.1999(3)10 何立民.单片机高级教程应用与设计M.北航大学出版社,200711 朱定华.单片微机原理与应用M.北京交通大学出版社,200812 苏小林.计算机控制技术M.中国电力出版社,200713 高卫东,辛友顺,韩彦征.51单片机原理与实践M.北京航空航天大学出版社,2008