




免费预览已结束,剩余43页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
邵阳学院毕业设计(论文) 目录前 言11 步进电机控制器方案设计与论证21.1 步进电机简介21.2 步进电机控制要求51.3 步进电机控制器方案设计与论证62 步进电机控制器电路设计92.1 步进电机控制器工作原理92.2 步进电机控制器单元电路设计103 程序设计183.1 程序流程设计183.2 程序设计234 产品制作与调试284.1 PCB板设计284.2 PCB板制作314.3 产品调试37总结42参考资料43致谢44附录1:电路原理图45附录2:PCB板图46前 言步进电机是一种将电能转化为角位移的装置。当它接收到一个脉冲信号,步进电机按设定的方向转动一个固定的角度。步进电机广泛应用于工农业生产、人们生产生活中,如:数控机床的横纵向走刀、线切割的工作台拖动、空调的电子膨胀阀、办公用品的打印、微机的光盘驱动等。步进电机分为反应式、永磁式、混合式三类。其中混合式步进电机综合了反应式和永磁式的优点,它的动态性能好,控制精度高,是目前应用最广泛的一种。 步进电机最早是在1920年由英国人开发。至此步进电机的控制技术在国外经历了80多年的发展,产品制造技术和控制技术都有很大的发展。随着信息技术、和数字控制技术的发展,在发达国家如日本、韩国、美国等对步进电机的控制已实现数字控制。而在我国,步进电机研制始于1958年,且无专门的研制机构,步进电机基本上处于仿造阶段。直到60年代末,为满足数字控制线切割机床发展的需要,才使步进电机的研究工作才有突破性发展。目前我国对步进电机的控制技术的研究还处于较低水平。步进电机发展的趋势是数字化控制。因此研究步进电机的数字控制对我国步进电机发展,具有重大意义。传统的步进电机控制器采用数字电路芯片实现。基于该技术的控制器虽能满足一定的生产要求,但其功能单一,不易修改,灵活性差,对于高精度、高分辨率的场合显得心有余而力不足。目前步进电机控制,采用单片机控制技术。基于单片机的步进电机控制器是以AT89C2051单片机为控制核心,系统在程序控制下,实现步进电机所需的脉冲,实现步进电机的方向和角度的控制。该控制器适用于运算速度快、控制精度高、高稳定性和高分辨率的场合,具有通用性强、可靠性高、维修方便和能耗低等特点。本文将详细描述步进电机控制器的硬件电路和软件的设计。同时在此基础上,对该产品进行硬件和软件调试。1 步进电机控制器方案设计与论证步进电机是纯粹的数字控制电动机。它将电脉冲信号转变为角位移,即给一个脉冲信号,步进电机就转动一个角度。近年来,随着数字技术、计算机技术的发展,步进电机在制造水平和控制水平方面都有长足的发展,步进电机已广泛应用于人民生活和工农业生产中。1.1 步进电机简介1.1.1 步进电机工作原理与特点 步进电机的分类 反应式步进电机(variable reluctance,简称VR)反应式步进电动机亦称磁阻式步进电动机。其电转子磁路均由软磁材料制成,定子上有多相励磁绕组,利用磁道的变化产生转矩。这种电动机的相数一般为三、四、五、六相,转子中没有绕组。它的结构简单,成本低,步距角可以做得很小,但动态性能较差。 永磁式步进电机(permanent magnet,简称PM)永磁式步进电机的转子是用永磁材料制成的,转子本身就是一个磁源,定子是由永久磁钢制成。绕组轮流通电,建立的磁场与永久磁钢的恒定磁场相互作用产生转矩,它的输出转距大,动态性能好。转子的极数与定子的极数相同,所以步距角一般比较大。需供给正负脉冲信号。 混合式步进电机(hybrid, 简称HB)这种电机我国也称为永磁感应子式步进电动机,最早见于美国专利,称为SLO-SY电机,由于转子上有磁钢,所以也可以说是一种永磁式步进电动机。但从定子或转子的导磁体来看,又和反应式步进电动机相似,是反应式及永磁式步进电动机的结合,因此叫做混合式步进电动机。他不仅具有反应式步进电动机步距角小、相应频率高的优点,而且还具有永磁步进电动机励磁功率小、效率高的优点,是一种很有发展前途的步进电动机。混合式步进电机综合了反应式和永磁式两者的优点,它的输出转距大,动态性能好,步距角小,但结构复杂,成本较高。由于反应式步进电机的性能价格比比较高,因此这种步进电机应用的非常广泛,尤其在单片机系统中大量使用。本章以这种步进电机为例,介绍步进电机的原理和控制方法。 步进电机的结构步进电机由定子和转子两部分组成。下面以两相反应式步进电机为例,定子上有四个磁极,每两个相对的磁极组成一对,共有两对。每对磁极都缠有同一个绕组,形成一相。转子是由软磁材料制成的,其外表面均匀分布着小齿,它们大小相同,间距相同。这些小齿与定子磁极上的小齿的齿距相同,形状相似, 图1.1 步进电机结构图如图1.1。 步进电机的工作原理反应式步进电机运动的动力来自于电磁力。在电磁力的作用下,转子被强行推动到最大磁导率(或者最小磁阻)的位置,即定子小齿与转子小齿对齐的位置,并处于平衡状态。对两相步进电机来说,当某一相的磁极处于最大磁导率位置时,另外一相必须处于非最大磁导位置,即定子小齿与转子小齿不对齐的位置。我们把定子小齿与转子小齿对齐的状态称为对齿;把定子小齿与转子小齿不对齐的状态称为错齿。错齿的存在是步进电机能够旋转的前提条件,所以,在步进电机的结构中必须保证有错齿存在,也就是说,当某一相处于对齿状态时,其他相必须处于错齿状态。如果给处于错齿状态的相通电,则转子在电磁力的作用下,将向磁导率最大(或磁阻最小)的位置转动,即向趋于对齿的状态转动。步进电机就是基于这一原理转动的。 步进电机的工作方式反应式步进电动机有许多种的通电方式,下面以双三拍为例来说明步进电机工作方式。每次对两相同时通电,即为“双”;磁场旋转一周需要换相3次,即为“三拍”,转子转动一个齿距角。在双三拍工作方式中,步进电机正转的通电顺序为:AB-BC-CA;反转的通电顺序为:BA-AC-CB。其步距角由QZ =Z/N=2/NZ计算。 步进电机的特点 步进电机的角位移与输入脉冲数严格地成正比,因此,当它转一转后,没有累计误差,具有良好的跟随性。 由步进电机与驱动电路组成的开环数控系统,既简单、廉价,又非常可靠。同时,它也可以与角度反馈环节组成高性能的闭环数控系统。 步进电机的动态响应快,易于启停、正反转及变速。 速度可在相当宽的范围内平滑调节,低速下仍能保证获得大转矩,因此,一般可以不用减速器而直接驱动负载。 步进电机只能通过脉冲电源供电才能运行,它不能直接使用交流电源和直流电源。 步进电机存在振荡和失步现象,必须对控制系统和机械负载采取相应的措施。 步进电机自身的噪声和振动较大,带惯性负载的能力较差。步进电机的技术指标步进电机的技术指标包括静态指标和动态指标。 步进电机的静态指标相数:产生不同对极N、S磁场的激磁线圈对数,常用m表示。拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即:AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A。步距角:对应一个脉冲信号,电机转子转过的角位移用表示。=360度/(转子齿数J运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为=360度/(504)=1.8度(俗称整步),八拍运行时步距角为=360度/(508)=0.9度(俗称半步)。定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积(几何尺寸)的标准,与驱动电压及驱动电源等无关。虽然静转矩与电磁激磁安匝数成正比,与定齿转子间的气隙有关,但过分采用减小气隙,增加激磁安匝来提高静力矩是不可取的,这样会造成电机的发热及机械噪音。 步进电机动态指标步距角精度:步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差/步距角100%。不同运行拍数其值不同,四拍运行时应在5%之内,八拍运行时应在15%以内。失步:电机运转时运转的步数,不等于理论上的步数,称之为失步。失调角:转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。最大空载起动频率:电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。最大空载的运行频率:电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。运行矩频特性:电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据4。1.2 步进电机控制要求 步进电机的运行步进电机的运行控制涉及到位置控制和加减速控制。其中位置控制是它的最主要用途。步进电机的位置控制是控制步进电机带动执行机构从一个位置精确地运行到另一个位置。当然速度控制也是它必不可少的内容。在速度控制中,通过调整单片机发出的脉冲频率,达到速度控制。 步进电机的转向如果给定工作方式正序通电换相,步进电机正转,如果按反序通电换相,则电机就反转。如表1.1,按0-3顺序通电电机正转,按3-0顺序通电电机反转。表1.1 通电次序 步进电机的速度如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快,如果两个脉冲的间隔越长,步进电机就转得越慢。因此,脉冲的频率f决定了步进电机的转速。调整单片机发出的脉冲频率,就可以对步进电机进行调速2。1.3 步进电机控制器方案设计与论证1.3.1 方案设计步进电机是将电脉冲信号转化为角位移的装置。步进电机控制器目前主要有三种方式实现,分别为基于数字电路芯片的控制器、基于DSP控制的控制器和基于单片机控制的控制器。步进电机的数字化控制将是步进电机控制器未来发展的必然趋势。下面具体介绍三种典型的控制方案。方案一 基于数字电路芯片的步进电机控制方案基于数字电路芯片的步进电机控制方案,如图1.2。步进电机控制系统主要由步进控制器、功率放大器及步进电机组成。步进电机控制是由缓冲寄存器、环行分配器、控制逻辑及正、反转控制门等组成的。它的作用就是能把输入的脉冲转换成环型脉冲,以便控制步进电机,并能进行正、反向控制。功率放大器的作用就是把控制器输出的环型脉冲加以放大,驱动步进电机转动。 图1.2 步进电机的控制系统的组成这种控制方式在步进电机控制器的早期历史阶段,起到了一定的作用,并满足了当时的控制器要求。但随着生产要求的提高,基于此芯片控制的方案其缺点日益凹现。一方面表现在技术上满足不了生产的需要,另一方面元件太多容易出故障。方案二 基于DSP的步进电机控制方案 基于DSP的步进电机控制方案,如图1.3。步进电机控制系统由微处理器、脉冲分配器、驱动电路组成。微处理器是产生脉冲,对机器下达命令。脉冲分配器则是分配命令,指导机器运行。其中转向控制利用DSP的PWM口的“强制高”输出(正转)和“强制低”输出(反转)来实现。步进电机的速度控制是通过控制DSP发出的步进脉冲频率来实现的。通过控制DSP定时器的周期值来控制步进脉冲的频率。图1.3 DSP控制四相步进电机原理图 该方法灵活性好,抗干扰能力强,运算速度快,能实现复杂的控制系统所要求的高速度信号处理。但由于其开发工具价格高,使得DSP芯片的价格较高,对于简单的控制系统而言,采用DSP控制显得大材小用。目前该方案只适用于精度要求高的场所。方案二 基于单片机的步进电机控制方案基于单片机的步进电机控制方案如图1.4。系统由命令输入单元,微处理器和功率放大器三部分组成。命令输入单元负责发布命令、输入数据,微处理器负责控制命令并实现,功率放大器提供信号放大的功能。其中命令输入单元,微处理器均采用中断工作方式。图1.4 单片机控制步进电机原理图该方法通用性强,适应性强,可靠性高,抗干扰能力强,系统维修方便,能耗低,且性价比最高。采用微型计算机控制,可以根据系统的需要,灵活改变步进电机的控制方案。其次用软件代替硬件,不仅简化了电路,更降低了成本,提高了可靠性。1.3.2 方案论证 从技术上看,方案一、方案二和方案三都可以实现对步进电机的控制。方案一利用数字电路芯片的逻辑关系对脉冲进行分配,实现对步进电机的控制。但随着生产要求的提高,它的灵活性和通用性满足不了生产的需求。方案二基于DSP芯片的控制,由于DSP具有丰富的资源和强大的运算能力,目前该方案只适用于精度要求高的场所。而单片机以其数字控制功能强为特点,在市场厂上广受好评。同时它用软件代替硬件,不仅简化了电路,更降低了成本,提高了可靠性。 从经济上看,数字电路芯片价格较低,而DSP由于其开发工具价格高,导致其价格较高。对于单片机来说,价格处于两者之间,比数字电路芯片高,但相比DSP则较低。所以综合以上观点,从芯片的性价比来考虑,选用方案三即基于单片机的步进电机控制方案为此次设计的主要方案。2 步进电机控制器电路设计2.1 步进电机控制器工作原理步进电机控制器如图2.1所示,它由带中断的键盘,微处理器和脉冲分配放大器三部分组成。键盘发布命令、输入数据,微处理器负责控制命令并实现,功率放大器提供信号放大的功能。其中微处理器是此电路的核心部分,且采用中断工作方式。图2.1 步进电机控制器原理图根据设计的要求,键盘电路采用44的行列式键盘电路。键盘的列线分别和74HC30相应的芯片引脚连接,同时与单片机的P1.0、P1.1、P1.2、P1.3连接。键盘的行线与单片机的P1.4、P1.5、P1.6、P1.7连接。74HC30的输出引脚与单片机的INT0引脚连接。当键盘上有键按下时,74HC30的引脚由高电平变为低电平,同时向单片机发出中断请求,单片机此时调用中断服务程序。AT89C2051的P3口与驱动电路连接,当调用中断服务程序时,通过P3口的输出,控制驱动电路中三极管的通/关断,达到控制步进电机的目的。2.2 步进电机控制器单元电路设计步进电机控制器以89C2051为核心,主要由带中断键盘电路、脉冲分配和驱动电路、电源电路组成。下面具体介绍单元电路的设计。2.2.1 键盘电路设计 键盘结构键盘采用44的行列式带中断接口的键盘电路。输入功能键和数字键,发布控制命令。数字键为09,功能键有正转、反转、停止、设置、取消和确定。根据题目要求,设计一个如图2.2所示的键盘电路。图中列线P1.3P1.0通过四个上拉电阻接+5V电压处于输入状态,行线P1.4P1.7为输出状态。按键设置在行、列线交点上,行、列线分别连接到按键开关的两端。 扫描工作原理当键盘上没有键闭和时,行、列线之间是断开的,所有行线P1.4-P1.7输入全部为低电平。当键盘上某个键按下闭和时,则对应的行线和列线短路,行线输入即为列线输出。此时,若将所有行线输出初始化为低电平,则通过列线输入值是否为“1”即可判断 键盘中究竟哪一个键被按下,是通过行线逐 图2.2 键盘电路列置低电平后检查列输入状态来确定的。其方法是:先令行线P1.4输出低电平“0”,P1.5-P1.7全部输出高电平,读列线P1.3-P1.0的输入状态。如果读得某列线为“0”,则可确认为对应于该列线与行线P1.4相交处的键被按下,否则P1.4行上无键按下。如果P1.4行线上无键按下,接着令P1.5输出低电平“0”,其余为高电平“1”,再读P1.3-P1.0,判断是否全为“1”,若是,表示被按键也不在此行,依次类 推直至行线P1.7。这种逐行检查键盘状态的过程成为对键盘进行扫描。 按键防抖动技术防抖动技术总的来说有两种即硬件法和软件法。通过硬件电路消除按键抖动的影响是一种最广泛应用的措施,如:滤波防抖、双稳态防抖等。但采用硬件防抖电路时,N个键就必须配有N个防抖电路。因此,当键的个数比较多时,硬件防抖将无法胜任。在这种情况下,采用软件的方法进行防抖就很容易实现。当第一次检测到有键按下时,先用软件延时(10ms20ms),而后再确认该键电平是否仍维持闭合状态电平。若保持闭合状态电平,则确认此键确已按下,从而消除抖动的影响。本设计按键有16个,属于键盘个数多的类型,因此采用软件方法防抖11。 74HC30简介为实现键盘电路中采用的中断工作方式,特选取74HC30发送中断请求信号。当扫描到键盘中有键按下,74HC30就将高电平转化为低电平,送入89C2051的INT0口,请求中断。74HC30是8输入与非门集成芯片,采用先进的场效应管门电路CMOS技术,能达到具有低功耗的标准CMOS集成电路的LSTTL门电路同样的控制速度,其引脚分布如图2.3,功能图如图2.4 。 图2.3 74HC30引脚图 图2.4 74HC30内部功能图主要特征: 传送延时:20ns 电压范围:26V 静止电流:最大20A输入电流:最大1A 承载能力:10 LSTTL 负载2.2.2 脉冲分配和驱动电路设计 驱动工作原理步进电机控制器的驱动电路由电阻和三极管组成。如图2.5所示。电阻的四个端口分别和单片机的P3.0、P3.1、P3.4、P3.5连接,电脉冲信号由单片机P3口输出。驱动电路中的电阻F9F16均为51K欧姆,且分别与三极管Q1Q8的基极连接,起分压限流的作用,可以保护三极管。步进电机的绕组A、A、B、B分别接在三极管Q1和Q2,Q3和Q4,Q5和Q6,Q7和Q8之间。当P3口任一输出口为高电平时,与之相连接的三极管导通,绕组通电;当P3口输出为低电平时,则三极管截止,绕组断电。由此可见,驱动电路是通过控制三极管的通断顺序来达到对步进电机起着时序控制开关的作用。 图2.5 驱动电路原理图 驱动方式步进电机常用的驱动方式是全电压驱动,即在电机移步与锁步时都加载额定电压。为了防止电机过流及改善驱动特性,需加限流电阻。由于步进电机锁步时,限流电阻要消耗掉大量的功率,故限流电阻要有较大的功率容量,并且开关管也要有较高的负载能力。 步进电机的另一种驱动方式是高低压驱动,即在电机移步时,加额定或超过额定值的电压,以便在较大的电流驱动下,使电机快速移步;而在锁步时,则加低于额定值的电压,只让电机绕组流过锁步所需的电流值。这样,既可以减少限流电阻的功率消耗,又可以提高电机的运行速度,但这种驱动方式的电路要复杂一些。 驱动脉冲的分配驱动脉冲的分配可以使用硬件方法,即用脉冲分配器实现。现在,脉冲分配器已经标准化、芯片化,市场上可以买到。但硬件方法结构复杂,成本也较高。 步进电机控制(包括控制脉冲的产生和分配)也可以使用软件方法,即用单片机实现,这样既简化了电路,也降低了成本。使用单片机以软件方式驱动步进电机,不但可以通过编程方法,在一定范围内自由设定步进电机的转速、往返转动的角度以及转动次数等,而且还可以方便灵活地控制步进电机的运行状态,以满足不同用户的要求。因此,常把单片机步进电机控制电路称之为可编程步进电机控制驱动器。 三极管的选择步进电机有单相、两相和多相,其中多相步进电机又分为三相、四相和五相。下面以两相四拍步进电机为例(A-A为一组,B-B为一组)。本设计中使用的二相四拍电机有50个齿,齿距角为7.2度;每转一个齿距角需走四步,因而步距角为1.8度。另外必须按照一定的次序给每相通电,才能正常完成四步一个齿距的动作。电机每相电流为0.2A,相电压为5V。假设通过AA的电流为Ie=0.2A,U=5V,则看图2.5知Ic7=Ie+Ic8 (2.1) Ic7=Ic8 (2.2)则 Ic7=0.1A 看表2.1可知, 表2.1 三极管的选择Q1、Q3、Q5、Q7选择9012Q2、Q4、Q6、Q8选择9013 步进电机的选择步进电机有步距角(涉及到相数)、静转矩、及电流三大要素组成。一旦三大要素确定,步进电机的型号便确定了。 步距角的选择电机的步距角取决于负载精度的要求,将负载的最小分辨率(当量)换算到电机轴上,每个当量电机应走多少角度(包括减速)。电机的步距角应等于或小于此角度。目前市场上步进电机的步距角一般有0.36度/0.72度(五相电机)、0.9度/1.8度(二、四相电机)、1.5度/3度(三相电机)等。 静力矩的选择步进电机的动态力矩一下子很难确定,我们往往先确定电机的静力矩。静力矩选择的依据是电机工作的负载,而负载可分为惯性负载和摩擦负载二种。单一的惯性负载和单一的摩擦负载是不存在的。直接起动时(一般由低速)时二种负载均要考虑,加速起动时主要考虑惯性负载,恒速运行进只要考虑摩擦负载。一般情况下,静力矩应为摩擦负载的2-3倍内好,静力矩一旦选定,电机的机座及长度便能确定下来(几何尺寸)。 电流的选择静力矩一样的电机,由于电流参数不同,其运行特性差别很大,可依据矩频特性曲线图,判断电机的电流(参考驱动电源、及驱动电压)。 步进电机一般在较大范围内调速使用、其功率是变化的,一般只用力矩来衡量,力矩与功率换算如下: (2.3) (2.4) (2.5)其P为功率单位为瓦,为每秒角速度,单位为弧度,n为每分钟转速,M为力矩单位为牛顿米。 (2.6)其中f为每秒脉冲数(简称PPS) 注意事项 步进电机应用于低速场合-每分钟转速不超过1000转(0.9度时6666PPS),最好在1000-3000PPS(0.9度)间使用,可通过减速装置使其在此间工作,此时电机工作效率高,噪音低。步进电机最好不使用整步状态,整步状态时振动大。由于历史原因,只有标称为12V电压的电机使用12V外,其他电机电压值不是驱动电压伏值,可根据驱动器选择驱动电压(建议:57BYG采用直流24V-36V,86BYG采用直流50V,110BYG采用高于直流80V),当然12伏的电压除12V恒压驱动外也可以采用其他驱动电源, 不过要考虑温升。转动惯量大的负载应选择大机座号电机。电机在较高速或大惯量负载时,一般不在工作速度起动,而采用逐渐升频提速,一是电机不失步,二可以减少噪音同时可以提高停止的定位精度。高精度时,应通过机械减速、提高电机速度,或采用高细分数的驱动器来解决,也可以采用5相电机,不过其整个系统的价格较贵,生产厂家少,其被淘汰的说法是外行话。电机不应在振动区内工作,如若必须可通过改变电压、电流或加一些阻尼的解决。电机在600PPS(0.9度)以下工作,应采用小电流、大电感、低电压来驱动。一般步进电机的精度为步进角的3-5%,且不累积。步进电机外表温度在摄氏80-90度完全正常。应遵循先选电机后选驱动的原则3。2.2.3 电源电路设计因为步进电机是一种特殊的电机,我们专门精心设计了一个稳压电源,使步进电机能在各种特殊的环境都能正常工作。为了改善波纹特性,在输入端加接电容C4;在输出端加接电容C5、C6,目的是为了改善负载的瞬态响应、防止自激振荡和减少高频噪声。电路中加入一个发光二极管是为了对输出的电压进行稳压保护,用于电压小于额定电压或对地短路的时候的保护。稳压电源电路设计如图2.6所示。 技术参数额定电压:AC220V输出电压:DC12V、DC5V12V电源最大输出电流:1.5A 5V电源最大输出电流:1.5A 图2.6 稳压电路输入电压允许波动范围:85%110%AC 纹波系数:Kr 5 稳压块选用:我们选择了W7805集成稳压块。W7805系列集成稳压块主要技术参数:输入电压: DC3V35V最大输出电流:1.5AW7805系列稳压块封装如图2.7:1脚为输入端 2脚为公共端 3脚为输出端注意事项: 为防止过热应安装散热片; 印制板上的滤波电容应直接与引脚相连。 纹波系数计算: 图2.7 稳压块封装图经整流后的输出电压,除了含有直流分量外,还含有较大的谐波分量,这些谐波总称为纹波,用纹波系数Kr来表示, Kr = (2.7)而输出电压交流有效值Uor为:Uor = (2.8)对于桥式整流电路,Uo = 0.9U2,故纹波系数为: (2.9)= 0.4845 (2.10) 二极管承受最大反向峰值电压为:URM=U2118V (2.11)考虑到安全,二极管的反向耐压取1.5倍,既: URM1.518=27V (2.12)平均电流ID(AV),电路中,二极管的平均电流是输出电流的一半,其值为: ID(AV)=IL/2=308/2=154mA (2.13)由于通过二极管的电流不是正弦波,起瞬时值比均值大得多,而且在电源接通瞬间有相当大的冲击电流通过。因此,应选用比ID(AV)大0.52倍IF值的整流二极管。现取1.5倍值,即:IF =1.5 ID(AV) 1A14。2.2.4 AT89C2051简介AT89C2051在本次设计中是步进电机控制器的核心部分,系统在它的控制下,把键盘发出的命令转化为步进电机所需的脉冲和角度,实现对步进电机的控制。其中键盘的行、列线分别与AT89C2051的P1口连接,74HC30的输出端与P3.2中断0连接,驱动电路则和AT89C2051的P3口的其他端口连接。考虑到本次设计所要用到的引脚个数和资源合理分配,特选用AT89C2051单片机芯片。AT89C2051是一种低电压、高性能的CMOS 8位微控制器。片内有2KB的Flash可编程且可擦除的只读存储器。AT89C2051引脚为20个,无P0、P2口,只有15条可编程的I/O线,且每条I/O口线均可直接驱动LED显示。AT89C2051的供电电压范围为2.76.0V,不需要与之相对应的低压供电芯片,因此它可广泛用于低压供电的系统中。AT89C2051单片机引脚功能: P1.0P1.7:I/O端(作I/O口使用时P1.0、P1.1须接上拉电阻)。P3.0P3.7:共7个脚I/O端口,具有8051系列单片机相同的结构与功能。VCC:直流电源正端,2.7V-6V。 GND:直流电源负端,接地。RST:复位端。复位操作:是单片机的初始化操作,单片机在进入运行前和在运行过程中程序出错或操作失误,使系统不能正常运行时需要进行的操作。XTAL1:片内振荡电路的输入端; XTAL2:片内振荡电路的输出端; 图2.8 AT89C2051引脚图当步进电机工作在低频区或工作共振区或突然停止时,易产生振荡现象。引角XTAL1和XTAL2接入为时钟电路,可用来消除振荡16。3 程序设计步进电机控制器是以AT89C2051单片机为控制核心。键盘与单片机的P1口相接,通过按键响应中断,实现步进电机正转、反转、停止、速度在线控制。单片机P3口与驱动电路相接,通过脉冲信号来控制电机旋转(正转、反转、停止),且实现步进电机的运转控制,则通过汇编语言对单片机编程,由相应的程序来实现。3.1 程序流程设计 主程序流程设计 程序开始时系统将初始化,23H=0,24H=0,25H=0,26H=0,27H=0,28H=0,P1口为0F0H,A=50。其中23H=1则步进电机正转,此时调用正转子程序;同理,24H=1则步进电机反向旋转,调用反转子程序;25H=1步进电机停止旋转,调用停止子程序,系统重新复位。26H为设置键的状态存储地址,27H为Esc键的状态存储地址,28H为Enter键的入口地址。 图3.1 主程序流程图 中断服务流程设计主令控制电路的按键分别与单片机的P1口相连,通过键盘扫描,可以获得按键信息。当正转键按下时,地址23H被置1;当反转键按下时,地址24H被置1;当停止键按下时,地址25H会被置1;当设置键按下时,地址26H会被置1,打开设置子程序,采集数据。当主程序响应中断时,开放外部中断INT0,如图3.2。 图3.2 中断程序流程图 子程序流程设计子程序设计是本程序的核心内容,它包括键盘扫描子程序、停止子程序、延时子程序、正反转子程序、设置子程序。如图3.3 键盘扫描子程序流程:利用第2章2.2.1节所叙述的行列式原理进行扫描。 正反转子程序流程:由表3.1可知电机正反转的控制字,当脉冲信号高、低电平给单片机P3口赋值时,P3口值为03H、12H、30H、21H时,步进电机就正转;若赋值顺序反过来,则步进电机反转,如:03H、21H、30H、12H。P3口每赋值一次,步进电机转一步,且调用延时子程序一次。表3.1 两相四拍步进电机控制顺序两相按上表03的顺序进行通电,则步进电机正向旋转。反之,如果通电方向与上述顺序相反,则步进电机反向旋转。 设置子程序流程:当通过键盘扫描,确定数值也被读取,送入累加器A中,再送入寄存器R0中,保存此数值。当再有数值按下时,数值送入A,R0的地址自动加1,此时A中的数值到达了R0+1中。读取R0中的数值,通过调用延时子程序,加长或缩短两个脉冲相隔的时间,来到达控制转速的目的。 延时子程序流程:步进电机每运转一步,都要调用延时子程序延时,以保证运转的完全。设定值R2、R3,当R3执行完一次,R2自减1,直到R2自减到0时返回。如果R3为100,R2为0FFH。当R3由100自减到0时,R2自减1,即R2要自减到0,R3需要执行0FFH次由100自减到0。此设计中延时时间为10ms。 停止子程序流程:通过脉冲信号高、低电平的输入,给单片机P3口赋值。当P3口的脉冲信号全为低电平时,即P3=00H时,步进电机停转,系统回到初始状态。(a) 正转子程序流程图 (b) 反转子程序流程图(c) 延时子程序流程图 (d) 停止子程序流程图 (e) 键盘扫描子程序流程图(f) 设置子程序流程图图3.3 子程序流程图3.2 程序设计根据上系统程序流程图,设计的程序如下:主程序:给程序设定起始地址。程序开始后系统初始化,此时步进电机停止。然后开放CPU,设置INT0中断,选择边沿触发方式,再根据地址的起始设定情况,调用相应的子程序。ORG 0000HLJMP STARTORG 0003HLJMP LOOP ORG 0100HSTART: MOV SP,#60H MOV P1,#0F0HMOV A,#50 SETB EA ;开CPU SETB EX0 ;开INT0中断 SETB IT0 ;边沿触发方式 LOOP: JB 23H,L1 ;23H=1,转L1 JB 24H,L2 ;24=H,转L2 JB 25H,L3 ;25H=1,转L3 JB 26H,L4 ;26H=1,转L4L1: LCALL ZHENG ;调用正转子程序 LJMP LOOP L2: LCALL FAN ;调用反转子程序 LJMP LOOP L3: LCALL SHEZHI ;调用设置子程序 LJMP LOOP L4: LCALL TINGZHI ;调用停止子程序 LJMP LOOP键盘子程序:CPU通过读取P1.3-P1.0的状态确知有无键按下。当键盘上没有键闭和时,行、列线之间是断开的,所有行线P1.4-P1.7输入全部为低电平。当键盘上某个键按下闭和时,则对应的行线和列线短路,行线输入即为列线输出。此时,若将所有行线输出初始化为低电平,则通过列线输入值是否为“1”即可判断有无键按下。1 功能说明 4个步骤: P1.4行扫描初值 P1右移检测列 P1左移扫描行 计数指标至TABLE取码2 键码 TABLE: 01H,02H,03H,0AH 04H,05H,06H,0BH 07H,08H,09H,0CH 0FH,00H,0EH,0DH3 程序KEY: MOV R3,#0EFH ;选择P1.4这一行为0,即为扫描初值 MOV R1,#00H ;取码指针 LP2: MOV A,R3 ;开始扫描 MOV P1,A ;送行值 MOV A,P1 ;读P1口值,判断是否有键按下? MOV R4,A ;所读P1口值送R4为后面比较键值准备 SETB C ;进位清零 MOV R5,#04H ;设列数,扫描P1.0P1.3 LP3: RRC A ;扫描初值右移一位 JNC KEYIN ;查进位C是否为零,有键按下C=0,跳至KEYIN消除抖动 INC R1 ;进位不等零,表示没键按下,自动增1 DJNZ R5,LP3 ;4列扫描完毕了吗?查看这行完了吗? MOV A,R3 ;扫描值载入 SETB C ;C=1 RLC A ;向左移一位,扫描下一行(P1.5P1.7) MOV R3,A ;送R3保存 JC LP2 ;查寻进位是否为零,不为零继续扫描列 JMP KEY ;C=0则4行已扫描完毕 KEYIN: MOV R7,#60 ;消除抖动D2: MOV R6,#248 DJNZ R6,$ DJNZ R7,D2D3: MOV A,P1 ;读入P1值 XRL A,R4 ;与上次读入值比较 JZ D3 ;为零则表示相等,反之跳去再次扫描 MOV A,R1 ;按钮已放开,取码指针载入累加器 MOV DPTR,#TABLE ;数据指针指到TABLE MOVC A,A+DPTR ;从表中取码 JMP KEY RETITABLE: DB 01H,02H,03H,0AH;键码值 DB 04H,05H,06H,0BH; DB 07H,08H,09H,0CH; DB 0FH,00H,0EH,0DH 正转子程序:当脉冲信号高、低电平给单片机P3口赋值时,P3口值为03H、12H、30H、21H时,步进电机正转。ZHENG: MOV A,#03H ;第一拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#12H ;第二拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#30H ;第三拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#21H ;第四拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEAJMP ZHENG DONE: RETI反转子程序:当脉冲信号高、低电平给单片机P3口赋值时,P3口值为03H、21H、30H、12H时,步进电机反转。FAN: MOV A,#03H ;第一拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#21H ;第四拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#30H ;第三拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEMOV A,#12H ;第二拍控制字MOV P1,ALCALL DELAYDJNZ R0,DONEAJMP FAN DONE: RETI设置子程序:当通过键盘扫描,确定数值也被读取,送入累加器A中,再送入寄存器R0中,保存此数值,程序返回。SHE: LCALL KEYJB 28H,Y1JNB 29H,Y3MOV R0,AY1: RETI延时子程序: 将R0中的值送入R7中,通过控制脉冲的周期来控制速度的调节。DELAY: MOV A,R0 MOV R7,ADEL0: MOV R6,#126 ;给R6赋值DEL1: DJNZ R6,DEL1 ;等待R6自减为0DJNZ R7,DEL0 ;等待R7自减为0RETI;子程序返回停止子程序:通过脉冲信号高、低电平的输入,给单片机P3口赋值。当P3口的脉冲信号全为低电平时,即P3=00H时,步进电机停
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 七年级美术(浙美版)上册教学设计
- 2024-2025学年高中语文 第四单元 创造形象 诗文有别 4 阿房宫赋教学设计 新人教版《中国古代诗歌散文欣赏》
- 4《藏戏》(教学设计)-2023-2024学年统编版语文六年级下册
- 2023一年级数学下册 数学好玩第2课时 填数游戏教学设计 北师大版
- 2024-2025学年高中语文 第一单元 三 知之为知之不知为不知教学设计5 新人教版选修《先秦诸子选读》
- 2023九年级数学上册 第一章 特殊平行四边形2 矩形的性质与判定第2课时 矩形的判定教学设计 (新版)北师大版
- 2023四年级数学上册 八 垂线与平行线第6课时 认识平行教学设计 苏教版
- 2024-2025学年高中历史 第三单元 第2课 局部的反法西斯斗争教学设计5 新人教版选修3
- 3《我认识您了》(教学设计)2023-2024学年统编版道德与法治小学一年级上册
- 5《忧伤也会助成长》教学设计-2023-2024学年心理健康六年级下册教科版
- 建设项目职业卫生三同时档案管理
- JKW三相无功补偿控制器说明书赛源电气技术
- 印章刻制申请表、销毁申请表
- 基于项目式学习的信息技术教学设计与实施以数据处理与应用为例
- 试验室标准化上墙标牌
- 综合实践课《治理校园噪声》说课
- 门静脉高压症PPT
- 2023年运行值长题库
- 高中英语选词填空真题汇总及答案
- 品管圈PDCA循环在抢救车管理中的运用成品课件
- 耳鼻咽喉科学之喉科学课件
评论
0/150
提交评论