毕业设计论文基于单片机的避障广告机器人的设计.doc
湖南科技大学本科生毕业设计(论文)第一章 机器人概述及设计方案1.1 机器人的命名和分类1920年捷克斯洛伐克作家雷尔.卡佩克发表了科幻剧罗萨姆的万能机器人。在剧本中,卡佩克把捷克语“Robota”写成了“Robot”,“Robota”是农奴的意思。该剧预告了机器人的发展对人类社会的悲剧性影响,引起了大家的广泛关注,被当成了机器人的起源。罗萨姆公司把机器人作为人类生产的工业产品推向市场,让它去充当劳动力。机器人按照其主人的命令默默地工作,没有感觉和感情,以呆板的方式从事繁重的不公平的劳动。后来,罗萨姆公司取得了成功,使机器人具有了感情,导致机器人的应用部门迅速增加。在工厂和家务劳动中,机器人成了必不可少的成员。机器人发觉人类十分的自私和不公正,终于造反了,开始屠杀人类。因为机器人的体能和智能都非常优异,因此消灭了幸存者,但没有结果。最后,一对感知能力优于其他机器人的男女机器人相爱了。这时机器人进化为人类,世界又起死回生了1。几千年前人类就渴望制造一种像人一样的机器,以便将人类从繁重的劳动中解脱出来。如古希腊诗人Homeros的长篇叙事诗伊利亚特中的冶炼之神瘸腿海倍斯特司,就用黄金铸造出一个美丽聪颖的侍女;犹太传说中的泥土巨人等等,从这些美丽的神话可以知道早在两千年前人类就开始出现了自动木人和一些简单的机械偶人。到了近代,机器人一词的出现和世界上第一台工业机器人问世之后,不同功能的机器人也相继出现并且活跃在不同的领域,从天上到地下,从工业拓广到 农业、林、牧、渔,甚至进入寻常百姓家。机器人的种类之多,应用之广,影响之深,是我们始料未及的。从机器人的用途来分,可以分为两大类:军用机器人和民用机器人2。1.2 我国对机器人的定义一、该定义强调了机器人应当仿人的含义,即它靠手进行作业,靠脚实现移动,由脑来完成统一指挥的作用。非接触传感器和接触传感器相当于人的五官,使机器人能够识别外界环境,而平衡觉和固有觉则是机器人感知本身状态所不可缺少的传感器。这里描述的不是工业机器人而是自主机器人。二、机器人的定义是多种多样的,其原因是它具有一定的模糊性。动物一般具有上述这些要素,所以在把机器人理解为仿人机器的同时,也可以广义地把机器人理解为仿动物的机器。三、1988年法国的埃斯皮奥将机器人定义为:“机器人学是指设计能根据传感器信息实现预先规划好的作业系统,并以此系统的使用方法作为研究对象”。1987年国际标准化组织对工业机器人进行了定义:“工业机器人是一种具有自动控制的操作和移动功能,能完成各种作业的可编程操作机。”四、我国科学家对机器人的定义是:“机器人是一种自动化的机器,所不同的是这种机器具备一些与人或生物相似的智能能力,如感知能力、规划能力、动作能力和协同能力,是一种具有高度灵活性的自动化机器”。在研究和开发未知及不确定环境下作业的机器人的过程中,人们逐步认识到机器人技术的本质是感知、决策、行动和交互技术的结合。随着人们对机器人技术智能化本质认识的加深,机器人技术开始源源不断地向人类活动的各个领域渗透。结合这些领域的应用特点,人们发展了各式各样的具有感知、决策、行动和交互能力的特种机器人和各种智能机器,如移动机器人、微机器人、水下机器人、医疗机器人、军用机器人、空中空间机器人、娱乐机器人等。对不同任务和特殊环境的适应性,也是机器人与一般自动化装备的重要区别。这些机器人从外观上已远远脱离了最初仿人型机器人和工业机器人所具有的形状,更加符合各种不同应用领域的特殊要求,其功能和智能程度也大大增强,从而为机器人技术开辟出更加广阔的发展空间。 中国工程院院长宋健指出:“机器人学的进步和应用是20世纪自动控制最有说服力的成就,是最高意义上的自动化”。机器人技术综合了多学科的发展成果,代表了高技术的发展前沿,它在人类生活应用领域的不断扩大引起国际上重新认识机器人技术的作用和影响3。1.3 机器人的定位近年来,在机器人学的研究领域里有这样一种趋势,就是人们试图从自然界里探寻机器人设计的一些复杂问题的解决途径。所以,环境的定位对机器人很有必要,一个有使用价值的机器人要在怎样的环境下工作,这是有规定的,说可以适用于多环境的多功能的机器人是不切实际的,根本无法制作4。对机器人的工作环境的定位主要有两大类,室内环境和室外环境,而考虑到毕业设计的情况,我们把这个避障广告机器人的制作定为室内环境,而室内环境主要也可分为两大类:一类是可控环境;另一类是不可控环境,下面分别介绍。可控环境:如迷宫一样的路径,室内的铃声,场地上的障碍等。这样的环境因素对机器人的驱动装置的设计的影响是固定的,无突发性。此类机器人可能是执行特定任务的机器人,其驱动装置相对要简单的多,通常只要两个电机驱动若干个车轮就够了。不可控环境:设计一个不可控环境或在一个一定程度上不受限制的室内漫游的机器人时,所考虑的因素就大大多于可控环境下的情况。机器人需要应付很多复杂的,甚至是突发的情况,要求机器人能够识别各种情况,并设法解决各种问题。从机器人的工作环境就可以定义很多机器人的构造,如我们在室内的可控环境下工作,我们对机器人可以采用轮式驱动,而不需要采用履带式和步行式,在机器人的工作功率上,由于机器人本身的重量及其工作的力度我们选择一般的单极性步进电机就可以了5。1.4 避障广告机器人设计任务 本次的设计任务是完成对可移动机器人的设计,该机器人所具有的功能有自动避障,能够循环的进行语音播放广告和液晶显示广告词。1.5 避障广告机器人活动场景为了让广告范围更加宽广,机器人不需要按照设定的路线行走,只需达到躲避障碍的效果。机器人左右侧及前端红外发生接收器不断产生红外信号来检测是否有障碍,通过步进电机的驱动使机器人做出相应的反应6。当机器人检测到左侧有障碍时,机器人将向右转动,然后继续检测。当然当机器人检测到右侧有障碍时,机器人将向左转动,然后继续检测。如此反复检测,机器人即可顺利向前行进。机器人有可能遇到如下问题:检测到前侧有障碍的时候,恰好检测到左侧也有障碍物,按照程序的设计,机器人又将向右转,但是万一前方障碍比较近,转向时候可能撞上障碍,后来考虑到这个问题的出现,的确使机器人成功实现避障很困难,于是我有了如下考虑:当检测到前方及左侧都有障碍的时候,我会使机器人后退并向右转一定角度,从而使机器人躲避障碍。同理可处理前方和右方同时有障碍的情况。机器人具体活动场景及机器人俯视图如图1.1所示。1.6 避障广告机器人的设计方案本次设计的目标是设计一个具有自动避开障碍进行广告宣传的机器人。以AT89S51为核心的单片机控制系统实现机器人任务过程中的智能控制,液晶显示模块FYD12864-0402B显示广告内容,ARP9600语音芯片播放广告语音,机器人前端以及左右两侧均装有红外线传感器,可以对机器人周围环境进行探测来躲避障碍物和改变机器人行进方向,采用优化的软件算法,智能化的自动控制完成定位。1.6.1 电动机驱动模块步进电动机的驱动方式有很多种,由于集成电路集驱动和保护于一体,作为小功率步进电动机的专用驱动芯片,已经广泛应用于小型仪表,计算机外设等领域,使用起来非常方便。本设计采用ULN2003驱动芯片。1.6.2 前方及左右侧障碍检测模块 本次设计利用的是反射式的红外线传感器,虽然检测距离的精度达不到超声波测距的精确度,但是它具有体积小,重量轻,线性好的特点。从而帮助机器人躲避障碍。1.6.3 显示模块本设计采用FYD12864-0402B模块来完成对广告内容的液晶显示,并通过单片机控制,达到循环播放广告内容的目的。1.6.4 语音模块采用ARP9600语音芯片。有多种手动控制方式、分段管理方便、多段控制时电路简单、采样速度及录放音时间可调,并能直接由单片机控制,且采用此法能 提高本装置的性能,并且采用语音提示能使操作更加简便,减少误操作。图1.1 机器人活动场景及机器人俯视图第二章 避障广告机器人的硬件组成及电路设计2.1 硬件的整体设计根据设计的具体要求及设计方案的确定系统硬件的组成也可以基本确定,其原理图如图2.1所示:图2.1 硬件原理图2.2 单片机的应用领域和系统结构2.2.1 单片机的概述和应用特点现代的计算机都是向巨型化、微型化、网络化及智能化发展。其中微型化是计算机发展的重要方向,把计算机的运算器、控制器、储存器、输入/输出接口四个组成部分集成在一个硅片内,于是就出现了一个大规模集成电路为主组成的微型计算机(MICROCOMPUTER)单片机微型计算机,简称单片机,由于单片机的重要应用领域为智能化电子产品,一般需要嵌入仪器设备内,故又称嵌入式微控制器。微处理器(芯片)本身不是计算机,但它是小型计算机或微型计算机的控制和处理部分。微机则是具有完整的运算及控制功能的计算机,它除了包括微处理器(CPUCENTRAL PROCESSING UNIT)外,还包括存储器、接口适配器(即输入/输出接口电路)以及输入/输出设备(I/O)等。其中,微处理器由控制器、运算器和若干个寄存器组成;I/O设备与微处理器的连接需要通过接口适配器(即I/O接口);存储器是指微机内部的存储器(RAM、ROM和EPROM等芯片)。面向控制方面:单片机主要应用于控制领域,其结构及功能均按自动控制要求设计,又称微机(MICROCONTROLLER UNIT,MCU)。利用微控制器进行控制的技术称微型控制技术。微控制技术通过对单片机编程的方法代替模拟电路或数字电路实现的大部分控制功能,是对传统控制的一次革命7。在线应用方面:在线应用就是单片机代替常规的模拟或数字控制电路,使其成为测控系统的一部分,在被控对象工作过程中实行实时检测,并实时控制。在线应用为实时测控提供了可能和方便。嵌入式应用方面:单片机在应用时通常装入到各种智能化产品中,所以又称嵌入式控制器(EMBEDDED MICROCONTROLLER UNIT,EMCU)。嵌入式使用使得单片机的应用十分灵活。另外,单片机还具有体积小、成本底、速度快、使用灵活等特点。2.2.2 单片机应用系统的结构单片机的时钟和复位电路是单片机必不可少的部分。时钟电路是单片机的心脏,它控制着计算机的工作节奏。单片机的时钟产生方法有两种,内部时钟方式和外部时钟方式,设计中我们采用内部时钟方式。以AT89S51为例单片机时钟和复位电路组成如图2.3所示。单片机的扩展系统结构如图2.4所示。本系统采用电池组供电,每个电池的供电电压为4.5V。通过7812整流管获得稳定的12V工作电压给步进电机供电。再通过7805将12V转变成5V电压给系统板供电。电源电路图如图2.2所示。图2.2 电源电路图2.2.3 单片机的内部资源在本文中,用的是MCS-51系列的AT89S51,其内部资源主要有:(1) 4KB字节掩膜ROM程序存储器;(2) 128字节内部RAM数据存储器;(3) 2个16位的定时器/计数器;(4) 1个全双工的异步串行口;(5) 5个中断源两级中断优先级的中断控制器。时钟电路外界晶振和电容可产生1.2MHZ24MHZ,MCS-51系列单片机的所有产品都含有AT89S51除程序存储器以外的基本硬件。都是在8051的基础上改变部分资源(程序存储器,数据存储器,I/O口,定时器/计数器及其他一些特殊部件)。· 图2.3 单片机时钟复位电路组成复位电路时钟电路电源并行接口程序存储器输入/输出设备串行接口D/A电路A/D电路数据存储器输入/输出设备串行输入设备串行输出设备单片机I/O接口总线图2.4 单片机的扩展系统结构2.2.4 单片机的引脚它包括三大部分的引脚:电源及时钟引脚,控制引脚,输入/输出引脚,总共是40个引脚。其中P0、P1、P2、P3四个I/O口,通过这四个I/O口使单片机与外部交换信息,达到采集、处理、控制等各项工作,单片机引脚如图2.5所示。1电源及时钟引脚Vcc(40脚):接+5电源。Vss(20脚):接地。时钟引脚(18、19脚):外接晶体与片内的反相放大器构成一个震荡器,它提供单片机的时钟控制信号。时钟引脚也可以外接晶体震荡器。2控制引脚RST/VPD(9脚):当震荡器运行时,在此引脚加上两个机器时钟周期的高电平将使单片机复位(RST)。复位后应使此引脚电平为0.5V的低电平,以保证单片机的正常工作。ALE/(30脚):当单片机访问外部存储器时,ALE(地址锁存允许)输出脉冲的下降沿用于锁存16位地址的低8位。即使不访问外部存储器,ALE端仍有周期性正脉冲输出,起频率为振荡器频率的1/6。但是,每当访问外部数据存储器时,在两个机器周期中ALE只出现一次,即丢失一个ALE脉冲。ALE端可以驱动8个TTL负载。对于片内具有EPROM型的单片机8751,在EPROM编程期间,此引脚用于输入编程脉冲。(29脚):此输出为单片机内访问外部程序存储器的读选通信号。在从外部存储器取指令(或常数)期间,每个机器周期PSEN两次有效。但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现。PSEN同样可以驱动8个TTL负载。/Vpp(31脚):当EA保持高电平时,单片机访问的是内部程序寄存器(对8051、8751来说),但当PC(程序记数器)值超过某值(如8751内部含有4KB EPROM。值为0FFFH)时,将自动转向执行外部程序存储器内的程序。当EA为低电平时,则不管是否有内部程序寄存器而只访问外部程序寄存器。对8031来说,因其无内部程序存储器,所以该引脚必须接地,即此时只能访问外部程序存储器。对于片内有EPROM型单片机,在EPROM编程期间,此引脚用于施加编程电压Vpp。3输入/输出引脚P0口(P0.0P0.7):为双向8位的三态I/O口,当作为I/O口使用时,可直接连接外部I/O设备。它是地址总线低8位及数据总线分时复用口,可驱动8个TTL负载。以便作为扩展时地址/数据总线口使用。P1口(P1.0P1.7):为8位准双向I/O口,它的每一位都可以分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可驱动4个TTL负载。P2口(P2.0P2.7):为8位准双向I/O口,当作I/O口使用时,可直接连接外部I/O设备。它是与地址总线高8位复用。 P3口(P3.0P3.7):为8位准可驱动4个TTL负载,一般作为扩展时地址总线高8位使用。双向I/O口,是双功能复用口,可驱动4个TTL负载。8图2.5 AT89S51单片机的引脚图2.2.5 单片机的几个必要电路1时钟电路:时钟电路是单片机的心脏,它控制着计算机的工作节奏。单片机的时钟产生方法有两种,内部时钟方式和外部时钟方式,在这里我们采用的是内部时钟方式。MCS-51最常用的内部时钟电路是采用外接晶体(陶瓷震荡器的频率定性不高)和电容组成的并联谐振回路,MCS-51单片机允许的震荡晶体可在1.2MHz24MHz之间选择,一般取12MHZ。两个的电容的选择对震荡频率输出的稳定性、大小及震荡电路的起振速度有少许影响,其取值可在20pF100pF之间选择,一般当外接晶体时典型值为30pF,外接陶瓷谐振器时典型取值为47pF。2复位电路:计算机在启动运行时都需要复位,是中央处理器CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。单片机的复位都是靠外部电路来实现的,MCS-51有一个复位引脚RST,高电平有效,要使单片机复位,只要让RST保持两个机器周期的高电平,MCS-51便保持复位,RST变成低电平后,退出复位状态。 在单片机的实际应用系统中,除单片机本身需要复位以外,外部扩展的I/O接口电路等也需要复位。因此需要一个系统的同步复位信号,即单片机复位后,CPU开始工作时,外部电路一定要复位好,以保证CPU有效的对外部电路进行初始化编程。RST是高电平有效,而I/O接口电路的复位端一般为TTL电平输入,通常也是高电平有效,但这两种复位输入的复位有效的电平不完全相同,如果CPU和I/O的复位不同步,则系统不能正常工作。本设计中采用的是系统复位,将复位电路产生的复位信号经斯密特电路整形后作为系统的复位信号,加到MCS-51单片机和外部I/O接口电路的复位端。2.3 红外线传感器红外线光电传感器是由发射器、接收器和检测电路三部分组成,它利用被检测物体对红外光束的遮光或反射来检出物体的有或无,光电传感器检测不局限于金属,对其他物体均可检测,而且检测距离是接近开关不能相比的。电容式接近开关:由两个同轴金属电极构成,很像打开的电容器电极,该电极串接在RC振荡回路内。当检测物体接近检测面时,电极的容量产生变化,使振荡器起振,通过后级整形放大转换成开关信号,从而检测有无物体存在的目的。适用于液态、粉状、粒状原料位测量,机器定位及监控机器程序执行。2.3.1 红外发光二极管的特性常用的红外发光二极管(如SE303、PH303),其外形和发光二极管LED相似,发出红外光(近红外线约0.93m)。管压降约1.4V ,工作电流一般小于20mA。为了适应不同的工作电压,回路中常串有限流电阻。发射红外线去控制相应的受控装置时,其控制的距离与发射功率成正比。为了增加红外线的控制距离,红外发光二极管工作于脉冲状态,因为脉动光(调制光)的有效传送距离与脉冲的峰值电流成正比,只需尽量提高峰值Ip,就能增加红外光的发射距离。提高Ip 的方法,是减小脉冲占空比,即压缩脉冲的宽度T,一些彩电红外遥控器,其红外发光管的工作脉冲中空比约为1/41/3;一些电气产品红外遥控器,其占空比是1/10。减小脉冲占空比还可使小功率红外发光二极管的发射距离大大增加。常见的红外发光二极管,其功率分为小功率(1mW10mW)、中功率(20mW50mW)和大功率(50mW100mW以上)三大类。要使红外发光二极管产生调制光,只需在驱动管上加上一定频率的脉冲电压。用红外发光二极管发射红外线去控制受控装置时,受控装置中均有相应的红外线光-电转换元件,如红外光按收二极管,光电三极管等。实用中已有红外发射和接收配对的二极管,相对安放在发射与受控物的两端,中间相距一定距离;反射式指发光管和接收管并列一起,平时接收管始终无光照,只在发光管发出的红外光遇到反射物时,接收管收到反射回来的红外线才工作。2.3.2 红外检测的物理基础红外辐射又称红外线,它是一种不可见光,由于是位于可见光中红外光中红色光以外的光线,故称红外线。它的波长范围大致在0.761000UM。红外辐射的物理本质是热辐射。一个物体向外辐射的能量大部分是通过红外线辐射出来的。物体的温度越高,辐射出来的红外线越多,辐射的能量就越强。而且,红外线被物体吸收时,可以转变成热能。红外辐射和所有的电磁波一样,是以波的形式在空间直线传播,具有反射,折射,散射,干涉,吸收等特性。能全部吸收投射到它表面的红外辐射的物体称为黑体;能全部反射的物体称为镜体;能部分反射,部分吸收的物体称为灰体9。2.3.3 红外线反射型检测传感器 传感器一般是利用物理、化学和生物等学科的某些效应或原理按照一定的制造工艺研制出来的,其是由敏感元件、传感元件和其他辅助部件组成。红外传感技术已在科技,国防和工农业生产领域获得了广泛的应用。红外传感器的应用主要有以下几个方面:(1)红外辐射计,用于辐射和光谱辐射测量;(2)搜索和跟踪系统,用于搜索和跟踪红外目标,确认其空间位置并对它的运行进行跟踪;(3)热成象系统,可产生整个目标红外辐射的分布图象,多光谱扫描仪;(4)红外测距和通信系统等。红外线反射型传感器实际上是一种一体化的红外线发射、接收器件,能够以非接触的形式检测出前方一定范围内的人体或物体,并转换成高电平信号输出。红外线反射型传感器的检测距离与工作电压密切相关。工作电压越高,红外线反射功率越强,检测距离就越远;反之,电压低,检测距离就相对较近,采用 双管红外发射电路,可提高发射功率,增加红外发射的作用距离。红外线反射型检测传感器目前 广泛应用于各种自动检测,自动报警和自动控制等装置中。如:光电计数器、接近式照明开关、自动干手器、自控水龙头、感应门铃、倒车告警电路。2.3.4 左右两侧障碍物检测电路的设计机器人采用利用反射式红外线传感器,即在机器人两端各安装一个红外收发装置,在前端安装三个红外收发装置,在后端安装两个红外收发装置,用于检测障碍,具体电路图如图2.6所示。图2.6 红外线传感器电路图2.4 步进电机2.4.1 步进电机的基本介绍及控制原理本次设计采用42BYG系列步进电动机。步进电机是一种将脉冲信号变换成相应的角位移(或线位移)的电磁装置,是一种特殊的电动机。一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。步进电机其实是一个低速电机,被设计用来实现精确运动,一旦到达指定的位置就能保持停在那里。步进电机的最大工作转速为50100r/min。这对机器人来说恰好也是最合适的工作转速。下面以三相反应式步进电机为例来说其原理。(1)结构:电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。0、1/3、2/3,(相邻两转子齿轴线间的距离为齿距以表示),即A与齿1相对齐,B与齿2向右错开1/3,C与齿3向右错开2/3,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图:(2)旋转:如A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐,(转子不受任何力以下均同)。如B相通电,A,C相不通电时,齿2应与B对齐,此时转子向右移过1/3,此时齿3与C偏移为1/3,齿4与A偏移(-1/3)=2/3。如C相通电,A,B相不通电,齿3应与C对齐,此时转子又向右移过1/3,此时齿4与A偏移为1/3对齐。如A相通电,B,C相不通电,齿4与A对齐,转子又向右移过1/3。这样经过A、B、C、A分别通电状态,齿4(即齿1前一齿)移到A相,电机转子向右转过一个齿距,如果不断地按A,B,C,A通电,电机就每步(每脉冲)1/3,向右旋转。如按A,C,B,A通电,电机就反转。由此可见:电机的位置和速度由导电次数(脉冲数)和频率成一一对应关系。而方向由导电顺序决定。不过,出于对力矩、平稳、噪音及减少角度等方面考虑。往往采用A-AB-B-BCC-CA-A这种导电状态,这样将原来每步1/3改变为1/6。甚至于通过二相电流不同的组合,使其1/3变为1/12,1/24,这就是电机细分驱动的基本理论依据。不难推出:电机定子上有m相励磁绕阻,其轴线分别与转子齿轴线偏移1/m,2/m(m-1)/m,1。并且导电按一定的相序电机就能正反转被控制这是 步进电机旋转的物理条件。只要符合这一条件我们理论上可以制造任何相的步进电机,出于成本等多方面考虑,市场上一般以二、三、四、五相为多。 图2.7 定转子展开图2.4.2 步进电机控制原理步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下:(1)控制换相顺序通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为A-B-CD,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。(2)控制步进电机的转向如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。(3)控制步进电机的速度如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速10。2.4.3 步进电机的基本特性(1) 步进电机需加驱动电路,其驱动信号输入端为脉冲信号,若加入适当的脉冲信号,步进电机的转子就以一定的角度(称为步角)转动;(2) 步进电机的步进角一般为1.8°,即200步完成一圈;(3) 步进电机具有瞬间启动与急速停止的特性;(4) 改变励磁顺序,可以改变步进电机的旋转方向。2.4.4 步进电机的选择步进电机有步距角(涉及到相数)、静转矩、及电流三大要素组成。一旦三大要素确定,步进电机的型号便确定下来了。1.步距角的选择电机的步距角取决于负载精度的要求,将负载的最小分辨率(当量)换算到电机轴上,每个当量电机应走多少角度(包括减速)。电机的步距角应等于或小于此角度。目前市场上步进电机的步距角一般有0.36度/0.72度(五相电机)、0.9度/1.8度(二、四相电机)、1.5度/3度 (三相电机)等。2.静力矩的选择步进电机的动态力矩一下子很难确定,我们往往先确定电机的静力矩。静力矩选择的依据是电机工作的负载,而负载可分为惯性负载和摩擦负载二种。单一的惯性负载和单一的摩擦负载是不存在的。直接起动时(一般由低速)时二种负载均要考虑,加速起动时主要考虑惯性负载,恒速运行进只要考虑摩擦负载。一般情况下,静力矩应为摩擦负载的2-3倍内好,静力矩一旦选定,电机的机座及长度便能确定下来(几何尺寸)。3.电流的选择静力矩一样的电机,由于电流参数不同,其运行特性差别很大,可依据矩频特性曲线图,判断电机的电流(参考驱动电源、及驱动电压)。根据步进电机的特性及以上三大要素,本设计选择使用12V直流电源驱动的MSDA020L51型号的步进电机。2.4.5 应用中的注意事项(1)步进电机应用于低速场合-每分钟转速不超过1000转,(0.9度时6666PPS),最好在1000-3000PPS(0.9度)间使用,可通过减速装置使其在此间工作,此时电机工作效率高,噪音低。(2)步进电机最好不使用整步状态,整步状态时振动大。(3)由于历史原因,只有标称为12V电压的电机使用12V外,其他电机的电压值不是驱动电压伏值 ,可根据驱动器选择驱动电压,当然12伏的电压除12V恒压驱动外也可以采用其他驱动电源,不过要考虑温升。(4)转动惯量大的负载应选择大机座号电机。(5)电机在较高速或大惯量负载时,一般不在工作速度起动,而采用逐渐升频提速,一、电机不会失步;二、可以减少噪音同时可以提高停止的定位精度。(6)高精度时,应通过机械减速、提高电机速度,或采用高细分数的驱动器来解决,也可以采用5相电机,不过其整个系统的价格较贵,生产厂家少,其被淘汰的说法是外行话。(7)电机不应在振动区内工作,如若必须可通过改变电压、电流或加一些阻尼的解决。(8)电机在600PPS(0.9度)以下工作,应采用小电流、大电感、低电压来驱动。2.4.6 步进电机与单片机的接口这里用的电机是单极性步进电机,单极性步进电机可以采用三种步进方式:单拍,双拍和半拍方式。单拍是指每次仅给一个绕组通电,结果导致转子旋转,并运动到转子永磁体与具有相反极性的绕组对齐的位置。双拍方式同时给两个绕组通电,这样就导致转子旋转,并在永磁体到达两个通电绕组的中间位置点时平衡。双拍方式的优点是比单拍方式多获得41.4%的输出力矩,不过代价是要花费后者两倍的能量。半拍方式工作时则让两个绕组通电与单个绕组通电方式交替的进行。应用单片机中P2.4P2.7与步进电机驱动芯片ULN2003的1R4R引脚相连,ULN2003中的Q1Q4引脚与步进电机的四个引脚相连,实现A片选或者B片选。具体连接如图2.8所示。2.4.7 步进电机的驱动电路步进电动机是一种数字元件,易于数字电路接口,但一般的数字电路的信号的能量远远不足以驱动步进电动机,因此,必须有一个与之匹配的驱动电路来驱动步进电动机。对步进电动机的驱动一般有以下要求:(1)能够提供较快的电流上升和下降速度,使电流波形尽量接近矩形;(2)有供截止期间释放电流流通的回路,以降低绕组两端的反电动势,加快电流衰减;(3)具有较高的功率及效率。步进电动机的驱动方式有很多种,由于集成电路集驱动和保护于一体,作为小功率步进电动机的专用驱动芯片,已经广泛应用于小型仪表,计算机外设等领域,使用起来非常方便。下面介绍其中一种小功率步进电动机驱动芯片。ULN2003 是高耐压、大电流达林顿芯片,由七个硅NPN达林顿管组成。 其内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱动电压=50V,电流=500mA,输入电压=5V,适用于TTL COMS,由达林顿管组成驱动电路。ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,它的输出端允许通过电流为200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动低压灯泡。通常单片机驱动ULN2003时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源。 ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。一个非门电路,包含7个单元,单独每个单元驱动电流最大可达350mA,9脚可以悬空。 比如1脚输入,16脚输出,你的负载接在VCC与16脚之间,不用9脚。 图2.8 单片机与步进电机的接口电路2.5 液晶显示模块 2.5.1 液晶显示模块的功能特点FYD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其分辨率为,内置8192个16*16点汉字和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示行点阵的汉字。也可完成图形显示,低电压低功耗是其又一显著特点。有该模块构成的液晶显示方案与同类性的图形点阵液晶显示模块相比,不论硬件电路或显示程序都要简洁的多,且该模块的价格也略低于相同点阵的液晶显示模块。FYD12864-0402B的基本特性:(1)低电源电压(VDD:+3.0-+5.5V);(2)显示分辨率:128×64点;(3)内置汉字字库,提供8192个16×16点阵汉字(简繁体可选);(4)内置 128个16×8点阵字符;(5)2MHZ时钟频率;(6)显示方式:STN、半透、正显;(7)驱动方式:1/32DUTY,1/5BIAS;(8)视角方向:6点;(9)背光方式:侧部高亮白色LED,功耗仅为普通LED的1/51/10;(10)通讯方式:串行、并口可选;(11)内置DC-DC转换电路,无需外加负压;(12)无需片选信号,简化软件设计;(13)工作温度: 0 - +55 ,存储温度: -20 - +60。 VCC:使用5V 电压。接口DB0DB7接单片机的P0.0P0.7,RS接P2.2,R/W接P2.3,E接P2.4,A接5V电压,K接地。2.5.2 模块接口说明和指令说明FYD12864-0402B接口说明和模块控制芯片提供的一套基本指令分别为表2.1和表2.2。2.5.3 FYD12864-0402B 与51 单片机的接口电路设计采用并口通讯模式,可将PSB接固定高电平,模块内部有上电复位电路,因此,在不经常需要复位的场合可将/RESET悬空。键盘有主动扫描和被动扫描两种工作方式。被动扫描时主机发一个取键盘指令,模块返回一次键盘码。主动扫描时模块不停地在扫描键盘,当发现有按键时立即返回一次键码给CPU,如果有指令正在执行,执行期间不扫描键盘,但是因为每条指令执行时间一般都只有几十毫秒,因此不会对键盘的捕获造成影响。模块总工作电流:平时未点亮背光:14mA,点亮背光灯:18mA,背光灯耗电:4mA,如果觉得太暗可以提出做一下调整。外界MCU 通过串口发命令和汉显模块通讯,模块对相应命令做出相应的显示或者返回相应的数据,默认通讯波特率为9600bps11。模块平时处于被动状态,需要主机命令予以触发动作,所有的发往汉显模块命令格式都是以“ESC”键值0x1b开始,后面跟一个字节的命令码,其后再跟具体命令内容。返回的内容都是以“ESC”键值0x1b开始,后面直接跟返回的内容。模块默认对每条指令做出执行是否成功的返回响应,执行完毕返回"OK"两个字符。模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。指令执行的时间请参考指令表中的指令执行时间说明。“RE”为基本指令集与扩充指令集的选择控制位。当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。FYD12864-0402B液晶模块与单片机的连接如图2.9。·忙标志:BF BF标志提供内部工作情况.BF=1表示模块在进行内部操作,此时模块不接受外部指令和数据.BF=0时,模块为准备状态,随时可接受外部指令和数据.·字型产生ROM(CGROM) 字型产生ROM(CGROM)提供8192个此触发器是用于模块屏幕显示开和关的控制。DFF=1为开显示(DISPLAY ON),DDRAM 的内容就显示在屏幕上,DFF=0为关显示(DISPLAY OFF)。·显示数据RAM(DDRAM)模块内部显示数据RAM提供64×2个位元组的空间,最多可控制4行16字(64个字)的中文字型显示,当写入显示数据RAM时,可分别显示CGROM与CGRAM的字型;此模块可显示三种字型,分别是半角英数字型(16*8)、CGRAM字型及CGROM的中文字型在0000H0006H的编码中(其代码分别是0000、0002、0004、0006共4个)将选择CGRAM的自定义字型,02H7FH的编码中将选择半角英数字的字型,至于A1以上的编码将自动的结合下一个位元组,组成两个位元组的编码形成中文字型的编码BIG5(A140D75F),GB(A1A0-F7FFH)。 表2.1 FYD12864-0402B接口说明管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC3.0+5V电源正3V0-对比度(亮度)调整4RS(CS)H/LRS=“H”,表示DB7DB0为显示数据RS=“L”,表示DB7DB0为显示指令数据5R/W(SID)H/LR/W=“H”,E=“H”,数据被读到DB7DB0R/W=“L”,E=“HL”, DB7DB0的数据被写到IR或DR6E(SCLK)H/L使能信号7DB0