机械手臂智能控制器的研究_第1页
机械手臂智能控制器的研究_第2页
机械手臂智能控制器的研究_第3页
机械手臂智能控制器的研究_第4页
机械手臂智能控制器的研究_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

-机械手臂智能控制器的研究摘要:本次毕业设计的主要目的是制造一个机械手臂控制器。该控制器可以通过调节改变机械手臂各个方向的旋转角度。本次设计主要采用的核心芯片是单片机AT89S52,控制机械手臂的旋转由两个电位器带动两个28BYJ-48步进电机来实现。调节电位器阻值大小时,改变两个步进电机的旋转角度。本次设计包含对手心物体探测的功能,当手心探测到物体时由触控触发警报。这里我们通过按键来模拟手掌物体识别,当触控按下时,发出警报,模拟物体握住后进行警报。关键词:机械手臂控制器;单片机AT89S2;智能;-i-Abstract:ThemainaimofthisgraduationprojectistocreatearoboticarmcontrollerThecontrollercanbeadjustedbychangingtherotationangleoftherobotarmineachdirectionThedesigngraduatescorechipmicrocontrollerisSingleChipMicrocomputerAT89S52,rotatingmechanicalarmdrivenbytwoslidingrheostatandtwo28BYJ-48steppermotorstoruntherotationangleoftwosteppermotorsrunbythechangesofSlidingrheostatThedesignincludestheopponentsmindobjectdetectionfunction,whenanobjectisdetectedbythepalmstouchtriggeranalarmPalmssobjectdetectionisdonebytouchTosimulatethepalmsobjectrecognitionthroughthekey,whenpressedthetouchsensor,itwillalarmKeywords:RobotController;SingleChipMicrocomputerAT89S52;Intelligent-ii-目录前言.1第1章课题背景及意义.2第11节课题背景.2第12节课题意义.2第13节课题需求分析.2第14节单片机的应用系统概述.2第2章系统分析.5第21节总体方案分析.4第22节芯片AT89S52的性能及其常用参数的分析.6第3章系统硬件设计.9第31节电源电路设计分析.9第32节电位器电路设计分析.9第33节电机驱动电路设计分析.12第34节报警电路设计分析.14第35节整体电路设计分析.15第4章系统软件设计.16第41节系统软件设计的思想.16第42节主程序流程图.17第5章系统测试.18第51节硬件调试.18第52节软件调试.19结论.21参考文献.22致谢.23附录.24附录1:实物照片说明.24附录2:PCB图.25附录3:整体连线图.25附录4:部分源程序.26-0-前言随着科学的进步和发展,对工作效率要求的逐步提升,以及人工操作的逐步淘汰,越来越多的工厂开始选择使用机器人或者机械手臂来进行工业流水线的操作。很多的工厂已经实现了1人车间甚至是无人车间。特别是在一些大型企业中,几万平方米的厂房里仅仅只需要数十个工程师就可以实现每天数百万的产品生产和包装。在这些工厂里,很多的机器人都通过机械手臂对物体进行抓取及操作。通过多个伺服电机和传感器,达到所需要的操作动作要求。迅速的完成设计的动作。本次设计中的机械手臂的运动主要是通过两个28BYJ-48步进电机的转动来带动手臂的转动。两个28BYJ-48电机的转动幅度由两个电位器的阻值的改变而改变,电位器通过A/D转换发送出的脉冲信号分别控制着两个28BYJ-48步进电机的旋转角度。这次设计中还通过按键来模拟机械手的手心物体探测功能,当按键按下时,蜂鸣器发生警报。本次设计采用单片机AT89S52作为控制核心,通过与ULN2003复合晶体管阵列,放大器、A/D转换芯片等一同完成机械手臂的控制。设计采用AT89S52单片机为主控器,通过编程,实现对机械手臂控制器的步进电机的转向,角度的设计以及触发警报的设计。灵活的机械手臂可以进行360度多角度的旋转动作,方便快速,操作简单,低成本,高效率。机械手臂的发展正在逐步得走向普遍化,实用化。-1-第1章课题背景及意义第1.1节课题背景在现代工业中,机械手臂作为高效率的操作装置被广泛应用于科研,机械、冶金、石油化学、国防等工业部门中,随着对生产效率、产品质量的要求不断提高和产量的增长,越来越多的工厂要求能自由控制机械手臂的运动及能够对机械手臂的手掌物体的感应识别。在可控制操作系统中,步进电机相对普通电机来说,步进电机是一种将电脉冲转化为角位移的执行机构。他可以实现开环控制,即通过驱动器信号输入端输入的脉冲数量和频率实现步进电机的角度和速度控制,无需反馈信号。但是步进电机不适合使用在长时间同方向运转的情况,容易烧坏产品,即使用时通常都是短距离频繁动作较佳。因此特别适合用于往复运动的机械手臂的控制。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度及步进角。您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制步进电机转动的速度和加速度,从而达到调速的目的。第1.2节课题意义机械手臂控制器的应用在可调的控制系统中具有很广泛的应用。这里我们通过研究基于AT89S52单片机的机械手臂控制器,研究单片机的控制过程与方法,研究步进电机控制的过程与特点,制作出一款操作简单,运动灵活,感应灵敏的机械手臂控制器。第1.3节课题需求分析利用微控制器与28BYJ-48步进电机及其驱动电路、电位器、感应传感器等组成一个测控系统,通过编程,实现对两个步进电机的旋转方向以及旋转角度的控制以及对手心物体探测通过传感器触发警报进行的模拟。在查阅相关资料的同时,完成系统任务需求分析和系统功能描述,制订系统设计方案,利用EDA技术(PROTEL)工具设计系统原理电路和PCB电路板图。然后进行系统硬件及软件的焊接及安装调试和系统应用程序设计、调试、运行。在完成系统设计、制作的基础上进行对毕业(设计)论文撰写。第1.4节单片机的应用系统概述单片机是一个单芯片形态、面向控制对象的嵌入式应用计算机系统。它的出现及发-2-展使计算机技术从通用型数值计算领域进入到智能化的控制领域。从此,计算机技术在两个重要领域通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。1嵌入式系统无疑是当前最热门、最具有发展前景的IT应用之一。嵌入式系统的应用可以使传统的电子系统升级成为智能化的电子产品,使其成为具有“生命”的现代化智能系统。嵌入式系统一般应用于对实时响应要求较高的设备中,单片机作为嵌入式系统的核心部件,其应用使电子系统的智能化出现了意想不到的效果,常常无需对硬件资源做任何改动,只需更新系统软件就能使系统功能升级。现代社会中嵌入式系统无处不在,早已被应用在国防、国民经济、以及人们日常生活的各个领域,主要可以归纳为以下几个方面。(1)军事装备:各种武器控制(火炮控制、弹道控制、炮弹引信等),坦克、舰船、轰炸等各种电子装备,雷达、电子对抗、军事通讯装备等。(2)家用电器:各种家电产品,如数字电视、机顶盒、数码相机、VCD、DVD、可视电话、洗衣机、电冰箱、手机、智能玩具等。(3)工业控制:各种智能仪器仪表、数控装置、可编程控制器、分布式控制系统、工业机器人、机电一体化设备、汽车电子设备等。(4)商用设备:各种收款机、POS系统、电子秤、条形码阅读器、商务终端、IC卡输入设备、自动柜员机、防盗系统等。(5)办公用品:复印机、打印机、传真机、扫描仪、手机、个人数字助理(PDA)、变频空调设备、通信终端、程控变换机、网络设备等。(6)医疗电子设备:各种医疗电子仪器,如X光机、超声诊断仪、心脏起搏器、监护仪器等,以及辅助诊断系统、专家系统等。单片机应用系统的设计包括单片机基本扩展、外围电路设计和程序设计、单片机应用系统开发环境、系统可靠性设计、电磁兼容性设计等内容。通常开发一个单片机系统的步骤如下:图1-1设计步骤-3-第2章系统分析第2.1节总体方案分析单片机步进电机调速系统整体框图如下图2-1所示。整体电路包含单片机系统电路、电源指示电路、电位器电路、按键电路、报警电路、电机转动系统及报警系统几大部分构成。首先接通电源后启动电源指示电路,指示灯开启,电路进入待机状态。RST为重置按键,按下可重置,首先调节1号电位器,缓慢旋转电位器的旋杆转轴,1号步进电机28BYJ-48会跟随旋杆转轴的旋转角度而改变其角度,当向反方向旋转1号电位器的旋杆转轴时,1号步进电机也会跟随其向反方向旋转相应的角度。当慢慢旋转2号电位器的旋杆转轴时,2号步进电机28BYJ-48则会跟随旋杆转轴的旋转角度而改变其角度,同样的当向反方向旋转2号电位器的旋杆转轴时,2号步进电机28BYJ-48也会跟随其向反方向旋转相应的角度。这里通过按键模拟机械手臂掌心的物体探测功能。当按下掌心探测按键时,蜂鸣器会发出长鸣警报。按下重置RST按钮,控制器重启。本次设计采用AT89S52单片机为主控器,通过编程,实现对机械手臂控制器的步进电机的转向,角度的设计以及触发警报的设计。灵活的机械手臂可以进行360度多角度的旋转动作,方便快速,操作简单,低成本,高效率。机械手臂的发展正在逐步得走向普遍化,实用化。设计中采用的立式直线式电位器,电位器通过ADC0832进行A/D转换,给电位器提供脉冲从而改变电机的旋转角度与旋转方向。其旋转角度的大小与总阻值的变化多少成正直线变化,也就是线性变化。因为电阻体上的导电物质均匀分布,因此单位长度上阻值相等,电阻值随着旋转均匀调节,角度越大阻值越大,从而控制步进电机的旋转角度随之变大。系统中使用了ADC0832作为A/D转换芯片,ADC0832是由美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。它体积小,兼容性强,性价比高,因此在本系统中采用。其最高分辨可达到256级,可以适应一般的模拟量转换要求。它的模拟电压输入在05V之间。芯片转换时间仅为32S,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI数据输入端,可以轻易的实现通道功能的选择。步进电机部分采用了28BYJ48型五线四相八拍步进电机。其电压为DC5V-DC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲-4-信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。在本次设计中还用到了晶振,在单片机电路里都会用到晶振。单片机晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。图2-1方案框图第2.2节芯片AT89S52的性能及起常用参数的分析AT89S52是由ATMEL公司生产的一款低功耗、高性能的CMOS8位微控制器,具有8Kbytes的在系统可编程Flash只读程序存储器以及256bytes的随机存储数据存储器即RAM。器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器和Flash存储单元,AT89S52单片机可提供许多较复杂系统控制应用场合。VccP10P12P11RSTP15P17P16P13P14P07P01P00P02P03P05P04P06P37P31P30P32P33P35P34P36ALEEA/VPPP27P21P20P22P23P25P24P26PSENXTAL1XTAL2GNDDPIP12345678910111213141516171819204023222126252429282732313035343338373639(AD0)(AD1)(AD2)(AD3)(AD4)(AD5)(AD6)(AD7)(AD15)(AD14)(AD13)(AD12)(AD11)(AD10)(AD9)(AD8)(RXD)(INT0)(INT1)(T0)(T1)(WR)(RD)(TXD)(T2)(T2EX)图2-2单片机引脚图-5-AT89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89S52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本2。AT89S52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。主要功能特性:兼容MCS52指令系统8k可反复擦写(1000次)FlashROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能AT89S52P为40脚双列直插封装的8位通用微处理器如图3-3所示,采用工业标准的C52内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。P0P3为可编程通用I/O脚,其功能用途由软件定义。引脚功能说明:P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动-6-(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。AT89S52时钟有两种方式产生,即内部方式和外部方式。(如图3-4a所示)AT89S52中有一个构成内部震荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英或陶瓷震荡器一起构成自激震荡器震荡电路如图。外接石英晶体(或陶瓷震荡器)及电容C1、C2接在放大器的震荡回路中构成并联震荡电路。对外接电容C1、C2虽然没有非常严格的要求,但电容的大小会轻微影响震荡频率的高低、震荡工作的稳定性、起震的难易程序及温度稳定性,如果使用石英晶体,推荐使用30pF10pF,而如果使用陶瓷谐振器建议选择40pF10pF。用户还可以采用外部时钟,采用外部时钟(如图3-4b所示)。在这种情况下,外部时钟脉冲接到XTAL1端,既内部时钟发生器的输入端,XTAL2悬空。由于外部时钟信号是通过一个2分频的触发器后作为内部时钟信号的所以外部时钟的占空比没有特殊要求,但最小高电平持续的时间和最大低电平持续的时间应符合产品技术条件的要求。-7-第3章系统硬件设计第3.1节电源电路设计分析考虑到要保证系统添加电压后可以正常运行,需要添加电源指示电路。用来表示对于电源电压的的是否存在进行指示,防止出现加上电压但因为电压连接不稳而使系统工作状况不正常,以为是因为系统损坏而发生的故障。其具体电路图如下图2-3所示。图2-3电源指示电路图第3.2节电位器电路设计分析本次设计的机械手臂上的步进电机由电位器进行控制,通过ADC0832进行A/D转换,给电位器提供脉冲从而改变电机的旋转角度与旋转方向。本次采用的立式直线式电位器,其旋转角度的大小与总阻值的变化多少成正直线变化,也就是线性变化。因为电阻体上的导电物质均匀分布,因此单位长度上阻值相等,电阻值随着旋转均匀调节,角度越大阻值越大,从而控制步进电机的旋转角度随之变大。ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。其芯片接口说明:CS_片选使能,低电平芯片使能。CH0模拟输入通道0,或作为IN+/-使用。CH1模拟输入通道1,或作为IN+/-使用。GND芯片参考0电位(地)。DI数据信号输入,选择通道控制。DO数据信号输出,转换数据输出。CLK芯片时钟输入。Vcc/REF电源输入及参考电压输入(复用)。-8-图2-4A/D转换芯片ADC0832引脚图正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能。图2-5电位器电路图-9-ADC0832头文件:/*功能:将模拟信号转换成数字信号*/sbitADC0832_CS=P16;sbitADC0832_CLK=P15;sbitADC0832_DIO=P14;unsignedintA_D(bitflag)unsignedchari;unsignedchardat;ADC0832_CS=1;/一个转换周期开始ADC0832_CLK=0;/为第一个脉冲作准备ADC0832_CS=0;/CS置0,片选有效ADC0832_DIO=1;/DIO置1,规定的起始信号ADC0832_CLK=1;/第一个脉冲ADC0832_CLK=0;/第一个脉冲的下降沿,此前DIO必须是高电平ADC0832_DIO=1;/DIO置1,通道选择信号ADC0832_CLK=1;/第二个脉冲,第2、3个脉冲下沉之前,DI必须跟别输入两位数据用于选择通道,这里选通道CH0ADC0832_CLK=0;/第二个脉冲下降沿if(!flag)ADC0832_DIO=0;/DI置0,选择通道0elseADC0832_DIO=1;/DI置1,选择通道1ADC0832_CLK=1;/第三个脉冲ADC0832_CLK=0;/第三个脉冲下降沿ADC0832_DIO=1;/第三个脉冲下沉之后,输入端DIO失去作用,应置1ADC0832_CLK=1;/第四个脉冲for(i=0;i#defineucharunsignedchar#defineuintunsignedint#de

温馨提示

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

评论

0/150

提交评论