步进电机细分本科毕业论文_第1页
步进电机细分本科毕业论文_第2页
步进电机细分本科毕业论文_第3页
步进电机细分本科毕业论文_第4页
步进电机细分本科毕业论文_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

1、邵阳学院毕业设计(论文)毕业设计(论文)课 题 名 称 步进电机细分控制系统设计 学 生 姓 名 梁伟明 学 号 0841330121 系、年级专业 信息工程系08级通信工程专业 指 导 教 师 刘伟春 职 称 讲师 2012年 5 月 20 日46摘 要步进电机作为执行原件在自动化控制、精密器械加工、航空航天技术以及所有要求高精度定位、自动记录、自动瞄准等高科技领域内,步进电机的处于越来越重要的地位。但是厂家生产的步进电机步矩角大、低频振动、高频失步等缺点。细分驱动技术是一种能够改善步进电机低频特性和提高步进精度的技术。广泛应用于高精度、低振动,低噪音系统。本设计以51单片机为核心,通过51

2、单片机控制L297,给L297提供时钟周期,单片机通过查表通过DAC0832数模转化给L297提供阶梯状的参考电压,由于阶梯状参考电压使得L297输出的斩波电流为阶梯状,L297阶梯状的斩波电流通过驱动驱动L298,给步进电机提供驱动电流,实现步进电机的细分控制。ABSTRCT目 录摘 要IABSTRCTII第1章 绪论11.1课题来源及研究意义11.2步进电机概述11.3步进电机驱动概述21.4 国内外发展趋势31.5 课题研究的内容4第1章 方案论证52.1总体方案论证52.2 细分方案论证72.3 最终方案选择9第3章 系统的硬件结构设计113.1单片机的功能特点113.2步进电机电机驱

3、动芯片介绍和电路设计143.2 DA转换芯片介绍和电路设计193.3电源电路设计22第4章 程序设计234.1主程序设计234.2细分程序设计244.3定时器程序设计284.4 外部中断程序设计30第5章 仿真结果与调试325.1 系统仿真结果325.1 误差分析33第6章 结论34参考文献35致谢36附录37第1章 绪论1.1课题来源及研究意义由于步进电机具有快速启停、精确步进、直接接收数字量等特点,所以在数控系统得到广泛应用。但是由于步进电机存在步距角较大及低速振动等问题,限制了它在高精度场合下的应用。为了解决此问题,有有必要对步进电机的步距角进行细分。本设计采用单片机控制系统实现步距角细

4、分,主要以恒频脉冲调宽细分驱动技术进行研究与分析,建立以单片机为核心的微控制系统并且进行程序控制的设计与试验。步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。山社电机生产的步进电机采用:采用永磁矽钢片及日本NSK原装轴承制造,与其他品牌步进电机相比具有定位精度高,输出力矩高,响应频率高,运行噪音低,動態特性好等特点及优势。步进电机作为执行原件,广泛的应用于各种自动化控制系统中。随着工业技术的不断进步,微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有重要的应用。在自动化

5、控制、精密器械加工、航空航天技术以及所有要求高精度定位、自动记录、自动瞄准等高科技领域内,对步进电机的细分要求也越来越高,研制出一种高精度自动定位系统无疑具有十分重要的意义。1.2步进电机概述步进电机是一种将电脉冲信号转换为角位移或直线运动的执行机构,由步进电机及其功率驱动装置构成一个开环的定位运动系统。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步距角)。脉冲输入越多,电机转子转过的角度就越多;输入脉冲的频率越高,电机的转速就越快。因此可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度,从而达到调速的

6、目的。步进电机种类,根据自身的结构不同,可分为常用三大类:反应式(vR,也称磁阻式)、永磁式(PM)、混合式(HB)。其中混合式步进电机兼有反应式和永磁式的优点,它的应用越来越广泛。步进电机具有自身的特点,归纳起来有5点:(1)位置及速度控制简便:步进电机在输入脉冲信号时,可以依输入的脉冲数量做固定角度的旋转而得到灵活的角度控制(位置控制)。因为速度和输入脉冲的频率成正比,运转速度可在相当宽范围内平滑调节。(2)可以直接进行开环控制:因为步距误差不长期累积,可以不需要速度传感器以及位置传感器,就能以输入的脉冲数量和频率构成具有一定精度的开环控制系统。(3)高可靠性:不使用电刷,电机的寿命长,仅

7、取决于轴承的寿命。(4)具定位保持力矩:永磁式、混合式步进电机在停止状态下(无脉冲信号输入时),仍具有励磁保持力矩,故即使不靠机械式的刹车,也能做到停止位置的保持。(5)中低速时具备高转矩:步进电机在中低速时具有较大的转矩,能够较同级伺服电机提供更大的扭力输出。步进电机也有自己的一些缺点:(1)步迸电机带惯性负载的能力较差。(2)不能直接使用普通的交直流电驱动,而必须使用专用设备步进电机驱动器。(3)输出转矩随转速的升高而下降。(4)从应用的角度来看,严重制约步进电机的两个问题是失步和振荡。由于步进电机在大多数情况下采用开环运行的方式,它的主要运行性能完全依赖于驱动器、负载和电机本身。有多种情

8、况会产生失步,比如起动或停止频率超过突跳频率,电机高速运行的脉冲频率超过了最大运行频率,所带负载转矩超过了起动转矩,共振等。通过改善驱动器的性能,可以减小运行中失步的可能。步进电机的低频振荡是另一个需要解决的问题。步进电机在极低频率下做连续步进运行,即每改变一次通电状态,转子转过一个步距角。如果阻尼较小,这种运动是一个衰减的振荡过程,转子是按自由振荡频率振荡几次才衰减到新的平衡位置而停止下来。每来一个脉冲,转子都从新的转矩曲线的跃变中获得一次能量的补充,这种能量越大,振荡越厉害当脉冲频率等于或者接近于电机的自由振荡频率时电机会出现严重的低频共振,甚至失步导致无法工作。一般不允许在共振频率下运行

9、,从驱动器的方面来看,使用细分驱动技术可以有效的克服低频共振的危害。1.3步进电机驱动概述步进电机的工作必须使用专用设备步进电机驱动器。驱动器针对每一个步进脉冲,按一定的规律向电机各相绕组通电(励磁),以产生必要的转矩,驱动转子运动。步进电机、驱动器和控制器构成了不可分割的3大部分。步进电机驱动系统的性能除与电机自身的性能有关外,在很大程度上取决于驱动器性能的优劣。当电机和负载己经确定之后,整个驱动系统的性能就完全取决于驱动控制方法“。步进电机驱动方式的发展先后有单电压驱动、高低压驱动、斩波恒流驱动、调频调压驱动和细分驱动等。(1)单电压驱动:主要特点是结构简单、成本低,通常在绕组回路中串接电

10、阻,以改善电路的时间常数来提高电机的高频特性。缺点是串接电阻将产生大量的热,对驱动器的正常工作极其不利,尤其是在高频工作时更加严重,因而它只适用于小功率或对性能指标要求不高的步进电机驱动。(2)高低压驱动:电机每相绕组导通时,首先施加高电压,使电流快速上升,当电流上升到额定值时,将高电压切断,回路电流以低电压电源维持。这种方式由于电流波形得到了很大改善,电机的矩频特性较好,起动和运行频率得到了较大提高。但由于电机旋转反电势、相问互感等因素的影响易使电流波形的顶部呈凹形,致使电机的输出转矩有所下降且需要双电源供电。(3)斩波恒流驱动:为了弥补高低压驱动电路中电流波形的下凹,提高输出转矩,人们研制

11、出斩波电路,采用斩波技术使绕组电流在额定值上下成锯齿形波动,流过绕组的有效电流相应增加,故电机的输出转矩增大,而且不需外接电阻,整个系统的功耗下降,效率较高,因而斩波恒流驱动应用相当广泛。(4)调频调压驱动:特点是施加在电机绕组的电压随工作频率的变化作相应的改变,步进电机在低频时工作在低压状态,减少能量的注入,从而抑制振荡;在高频时工作在高压状态,使电机有足够的驱动力矩。因而系统效率、运行特性等都有了明显改善。(5)细分驱动:它是将电机绕组中的电流细分,由常规的矩形波供电改为阶梯波供电。这样,绕组中的电流经过若干个阶梯上升到额定值,或以同样的方式从额定值下降虽然细分驱动电路的结构比较复杂,但在

12、不改变电机内部参数的情况下,使步距角减小到原来的几分之一至几十分之一,使步距角不再受电机结构和制造工艺的限制。由于绕组的电流变化幅度也大大减小,从而极大的改善步进电机运行的平稳性,提高匀速性,减轻甚至消除振荡。近几年来,由于微处理机技术的发展,细分驱动技术在驱动器中获得了广泛应用。1.4 国内外发展趋势目前在数控生产和经济型定位系统改造及机器人等定位系统的应用领域,有三分之二以上采用的是步进电机作为伺服控制系统的。因此,如何改善电机的控制方法以提高定位系统的定位精度,成为提高系统性能的关键所在。目前,电机控制方法已经由传统的PID控制方法发展到性能更优良、结构更简单的数字式PID控制方法,并取

13、得了较好的效果,在一定程度上提高了系统的定位精度。工业发达的国家都在大力发展精密定位技术,利用它进行产品革新、扩大生产和提高良品率和国际经济竞争力。为了满足定位精度的要求,各国都在研究影响系统精度的因素,以及如何实现固有的精度指标。在精度定位研究方面水平最高的是美国,其LINL国家试验室、Lloore、YnionCarbide、PneumoPrecision等公司均在精度定位系统研究与开发方面做出了卓越成效的工作。美国国防部高等研究计划局(DARPA)投资1300万美元,由LINL试验室与1983年7月研制成功的LODAT!大型超精密机床利用激光干涉测量系统,采用压电晶体误差补偿技术,使定位精

14、度可以达到0025um,是世界公认最高水平的机床。但是该机床不但重达1360kg,体积庞大,造价更是昂贵。日本近些年来花费巨大人力、物力,开发、研制精密机床,1987年日本通产省开始的“超尖端加工系统的研究开发”是大型研究规划提出的设想。但是,由于精密和超精密加工的尖端部分代表着最新科学技术的发展,同时与航空、军事、核能等方面联系密切,各国对这部分技术是严格保密的。有关精密加工的高新技术和产品还对中国实行禁运。而发展精密加工技术又是我国的当务之急,因此我们必须依靠自己力量,加速发展自己的精密定位技术。随着微电子技术、大功率电力电子器件及驱动技术的进步,目前发达国家的驱动器已进入恒相电流与细分技

15、术相结合的技术阶段,使步进电机低速运行振荡很小、高速运行时转矩维持不变。在步进电机驱动技术上,一方面由于采用了斩波恒流控制、sP删(正弦脉宽调制)和细分技术以及最佳升降频控制,大大提高了步进电机运行快速性和运动精度,使步进电机在中、小功率范围内向高速精密化领域渗透;另一方面在电路设计方面,驱动器电路普遍采用单片机加上外围电路,或专用SPWM芯片甚至DSP来产生SPWM波来控制功放电路上开关管的通断,从而控制各相绕组细分电流的大小。功率开关管目前采用的功率场效应管(MOSFET),与早先采用的大功率晶体管(GTR)相比有很多优点;性能更加优越的绝缘栅极晶体管(IGBT)也己应用于高速型及较大功率

16、的步进电机驱动电路中。1.5 课题研究的内容步进电机是机电一体化产品中关键部件之一,通常被用作定位控制和定速控制。步进电机惯量低、定位精度高、无累积误差、控制简单等特点。广泛应用于机电一体化产品中,如:数控机床、包装机械、计算机外围设备、复印机、传真机等。细分驱动技术是一种能有效改善步进电机低频特性和提高步进电机精度的驱动技术,广泛的应用于对工况要求较高的场合,尤其在一些要求高精度、低噪音、低振动的系统中,细分驱动成为步进电机驱动首选技术。采用正弦脉宽调制技术、细分技术实现电流的控制,以克服传统驱动技术下步进电机低速转动、存在共振现象、噪音大、高速转矩小等缺点。第1章 方案论证2.1总体方案论

17、证步进电机可以用FPGA、DSP、单片机等芯片作为步进电机的核心控制,但是每种芯片驱动步进电机都有各自的优缺点。2.1.1 基于FPGA方案设计利用FPGA 中的嵌入式EAB存放步进电机转角细分电流所需的数据控波形表, 利用FPGA 设计的数字比较器可以同步产生多路PWM 电流波形, 对四相步进电机转角进行均匀细分、灵活控制. 若提高ROM控制波形表的数据的位数、并增加计数器和比较器的位数, 提高计数精度, 就可以提高PWM 波形的细分精度, 对步进电机的步进转角进行任意细分, 实现步进转角的精确控制。图2.1 FPGA系统方框图2.1.2 基于DSP方案设计利用DSP芯片作为系统控制核心。采

18、用CMOS工艺制作,功耗低,有多达56个独立可编程复用的通用I/O引脚(GPIO),驱动能力强;其内置的电机控制外设,两个事件管理器模块,可以同时输出多路PWM信号,符合本设计的需求图2.2为基于DSP的步进电机细分驱动设计框图。 采用专门为两相/四相步进电机设计的L298双全桥驱动芯片作为功率驱动芯片,实现对两相混合式步进电机的细分控制。由查表法生成A、B、C、D相电流值I由查表法生成A、B、C、D相电流值送入DSP的事件管理器的比较寄存器,由此生成宽度不同的PWM脉冲来控制电机驱动芯片(L298)内模拟开关的开通和关断,最后达到控制电机两相电流的目的。图2.2 DSP系统方框图2.1.3

19、基于单片机方案设计单片机作为一个控制芯片,有40个IO口,其内部存放步进电机转角细分电流所需的数据控波形表,由其内部查表产生数字量化信号经过DA转换,将数字信号转化为模拟信号,经过斩波器将模拟信号转化成PWM电流信号,对四相步进电机转角进行均匀细分、灵活控制。图2.3 单片机系统方框图2.1.3 方案选择FPGA特别适合逻辑复杂,速度高,灵活性高,FPGA最大的特点就是灵活,实现你想实现的任何数字电路,可以定制各种电路,硬件实的方式可以应对设计中大量的高速电子线路设计需求。FPGA比DSP拥有更快的速度,可以实现非常复杂的高速逻辑,FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的

20、器件之一,是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。但是对于步进电机细分这种不是复杂度很高的控制系统来说,用FPGA就有点大材小用了,并且FPGA对电源要求比较高,为确保正确上电,内核电压VCCINT的缓升时间必须在制造商规定的范围内,FPGA比较复杂是小批量系统提高系统集成度、可靠性的最佳选择之一,做小控制大材小用,FPGA的费用比较高,显得很不合理。DSP具有高数据传输能力具有较高的集成度。具有更快的CPU,更大容量的存储器,内置有波特率

21、发生器和FIFO缓冲器。提供高速、同步串口和标准异步串口。有的片内集成了A/D和采样/保持电路,可提供PWM输出,由于DSP是一款专门用于数字信号处理的芯片,其稳定性好,精确度高,采用哈佛结构,计算速度快,很适合步进电机高精度细分,但是由于受采样频率限制,处理频率范围有限,高频时钟会受到高频干扰,数字系统由耗电有缘器件构成,没有无缘设备可靠,功率消耗较大,DSP主要处理数值计算问题,不太适合用于控制系统,其价格也比较贵,做步进电机系统成本比较高。单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的。芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般通用

22、的CPU。单片机程序指令,常数及表格等固化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。单片机是一款用于工业控制芯片,最早是被用在工业控制领域,它内部从硬件到软件都有一套完整的按位操作系统,对于控制系统有着巨大的优势,为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:分支转移能力,I/O口的逻辑操作及位处理能力,非常适用于专门的控制功能,功耗低,低电压,单片机的功能强大,价格低廉,在控制领域有着独特的优势。步进电机的细分驱动单片机完全有能力实现,单片机没有FPGA复杂逻辑控制,不需要特别电源要求;它也不像DSP那样芯片专门用于计算,指令比较复杂;单片机是一个独特的专门用

23、于控制,价格低廉,功耗较低。对于步进电机细分,单片机没有FPGA和DSP那样大材小用,也没有FPGA和DSP那样复杂,对于步进电机细分,单片机是最好的选择。2.2 细分方案论证2.2.1 方案一第一种是将步进电动机的控制位置数(以四相混合式步进电机为例)的四拍通电逻辑顺序变为八拍通电逻辑顺序,从而将步进角降为原来的一半。这种细分驱动方法的优点是只需要改变某一相的电流值。因此在硬件电路的设计上比较容易实现。如果在每次输入脉冲切换时,不是将绕组 电流全部通人或关断,只改变相应绕组 中的额定电流的一部分 ,则转子相应的每步转动原有步距角的一部分 ,而额定电流分成多少次进行切换 ,转子就 以多少步完成

24、一个原有的步距角 这种将一个步距角细分成若干步 的驱动方法即为细分驱动 同时,在步进电机每相绕组通电周期中 ,常用 的驱动方法采 用恒定 电流值驱动 ,该方法在驱动大力矩负载 时往往发热现象严重 为了解决上述问题 ,提出了斩波恒流驱动方法 在斩波恒流电路中 ,采用高电压驱动,电机绕组回路不 串联电阻 ,这样电流上升的速度会很快 同时在 电路 中设置采样电阻 ,在绕组电流达到额定值时,由于采样 电阻的反馈作用 ,通过 比较器使 电源 电压工作在关断状态 , 于电源电压并不是一直 向绕组供 电,而只是 一个个窄脉冲 ,总的输人能量是各脉冲时 间的 电压与 电流乘积的积分 ,取自电源的能量大幅度下降

25、 ,具有很高的效率 ,降低了发热量 在驱动器中采用将细分和斩波恒流驱动结合技术 ,电机 内流波形 从而使绕组 电流保持在额定值附近 内波动 由但这种方法却带来了一个不可克服的缺陷即电流合成矢量在旋转过程中的幅值是处在不断变化中。而这将引起涝后角的不断变化。当细分数很大、微步距角非常小时滞后角变化的差值B已大于所要求细分的微步距角,从而使微步距角的继续细分实际上失去了意义。图2.4 改变一相电流细分驱动2.2.2 方案二利用单片机的脉冲宽度可调波(PWM)来把原来的一个矩形脉冲波分解成一个阶梯波形。若设原来阶梯波角度为B,则按阶梯渡的步距角应为B,r·,其中n为阶梯波的个数。其优点是在

26、阶梯波驱动步进电机的时候能通过单片机产生的PwM波来灵活地改变输出脉冲的高低和长短从而实现步进电机的柔性控制和实现驱动大功率的步进电机。但由于驱动电路复杂且在定位的时候可能会产生振动故在其振动角度超过细分的最小角度时,已不适合高精密仪器的定位要求。另外,步进电机接运行频率工作时,启动和停止都需要有一个缓慢的升频和降频过程。启动时,可在启动频率之下启动步进电机,然后逐渐上升到运行频率;停止时,则先将频率逐渐降低到启动频率以下才能停止。特别是负载转动惯性比较大时该现象将严重地影响到细分步进转角的非线性和均匀旋转的控制。这就是现有细分技术方案不能达到超高分辨的根本原因。图2.4 阶梯电流细分驱动由于

27、方案一当细分数很大、微步距角非常小时滞后角变化的差值B已大于所要求细分的微步距角,从而使微步距角的继续细分实际上失去了意义。方案二能够解决步进电机发热,低速振动高速失步的问题,并且能够实现步进电机高精度细分,所以选择方案二。2.3 最终方案选择系统最终方案如下图2.5,以51单片机为核心通过外部按键选择细分码,选择有四个按键分别是2细分、4细分、8细分、16细分四种选择,通过内部定时器决定步进电机转动的频率,当定时器/计数器0溢出后P1.1使CLOCK接口电平发生变化,定时计数器1溢出后,通过查表法给P0口赋值,接P0口DA芯片得到单片机控制将数字信号转化模拟信号,经过DA转换后的模拟数值经过

28、放大器,成为L297斩波器的REF电压比较值。当计数器0产生溢出后,控制L297的时钟信号反转,计数器重装重装初值。L297经过斩波电路获得驱动步进电机的电流,L297内部三段译码转化成八步格雷码驱动L298,通过给L298驱动电机的电平,驱动步进电机转动,从而实现步进电机细分51单片机细分按键选择DA转换DA转换L297斩波电路L297斩波电路L298步进电机驱动步进电机图2.5 系统方框图第3章 系统的硬件结构设计本次设计以51单片机为核心,主要有步进电机驱动电路,DA转换电路,稳压电源电路三部分组成。单片机采用AT89C51作为主控制电路,步进电机驱动电路是由两片L297和一片L298组

29、成PWM阶梯脉冲斩波细分驱动电路,DA转换电路是由DAC0832采用双缓冲方式,稳压电源采用双组线圈变压器得到两路低压交流电,再分别由整流桥整流得到直流,电容滤波后分别经过三端稳压块7815和7805得到15V、5V直流。本设计通过实验测试或通过PROTEUS电子设计平台实现电路设计及仿真来验证方案可行,最后都经过测试再进行改进。电路在PROTEUS电子设计平台实现电路设计及仿真(L297、L298驱动电路、DA转换电路、稳压电源电路),再进行测试、改进。3.1单片机的功能特点3.1.1 AT89C51单片机 单片机AT89C51采用40引脚双列直插封装(DIP)形式,内部由一个8位的80C5

30、1微处理器,4KB的程序存储器Flash ROM,256 字节的RAM,2个16字节的定时/计数器TO和T1,4个8 位的I/O端口:P0,P1,P2,P3,一个全双工UART串行通信口等组成。特别是该系列单片机片内的Flash可编程、可擦除只读存储器(EPROM),使其在实际中有着十分广泛的用途,在便携式、省电及特殊信息保存的仪器和系统中更为有用。单片机AT89C51提供以下功能:4 KB存储器;256 字节RAM;32条I/O线;2个16字节定时/计数器;5个2级中断源;1个全双向的串行口以及时钟电路。空闲方式:CPU停止工作,而让RAM、定时/计数器、串行口和中断系统继续工作。掉电方式:

31、保存RAM的内容,振荡器停振,禁止芯片所有的其他功能直到下一次硬件复位。单片机AT89C51为许多控制提供了高度灵活和低成本的解决办法。充分利用他的片内资源,即可在较少外围电路的情况下构成功能完善的超声波测距系统。AT89C51单片机封装图如下: 图3.1 AT89C51单片机封装图3.2.2 AT89C51主要特性与MCS-51兼容;4K字节可编程闪烁存储器(寿命100写/擦循环,数据保留10年);全静态工作:024KHz;三级程序存储器锁定;128×8位内部RAM;32位可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的限制和掉电模式;片内振荡器和时钟

32、电路。3.2.3管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写时,被定义为高阻输入。P0能够用于外部程序数据储存器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接受输出 4TTL门电路流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址

33、接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲区可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当由于外部程序储存器或16位地址外部数据存储器进行存取时了,P2口输出地值的高八位。再给出地址“1”时,它利用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1

34、”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下所示: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(外部数据存储器读选通)P3口同时为闪烁编程和编程娇艳接受一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储

35、器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入变成脉冲。在平时,ALE端以不变的频率周期正脉冲信号,此频率为振荡器频率的1/6。因此它可以用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如果禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序储存器的选通信号。在有外部程序存储器取值间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/P

36、SEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH)不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET:当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向震荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.2步进电机电机驱动芯片介绍和电路设计3.1.1 L297步进电机控制器介绍L297是意大利SGS半导体公司生产步进电机专用控制器,它能产生4相控制信号,可用于计算机控制两相双极和四相单级步进电机,能够用于单四拍、双

37、四拍、四相八拍方式控制步进电机。芯片内的PWM斩波器电路可在开关模式下调节步进电机绕组中的电流。该集成电路采用了SGS公司的模拟/数字兼容的I2L技术,使用5V的电源电压,全部信号的连接都与TTL/CMOS或者集电极开路的晶体管兼容。L297的芯片特别紧凑,采用双列直插20脚塑封,其引脚如图3.2,内部结构方框图如图3.3图3.2 L297引脚封装图图3.3 L297内部结构图在图3.3所示的L297内部方框图中,变换器是一个重要的组成部分。变换器有一个三位计数器加某些组合逻辑电路组成,产生一个基本八步格雷码,由变换器产生四个输出信号送给后面输出逻辑部分,输出逻辑提供禁止和斩波器所需要的相序。

38、为了能获得良好的速度和转矩特性,相序信号是通过两个PWM斩波器控制电动机,每个斩波器用于双极性步进电机其中一相或用于单极性步进电机每对绕组。每个斩波器包含一个比较器、一个触发器和一个外部检测电阻,如图3.4所示。芯片内部的通用振荡器为两振荡器提供的斩波频率脉冲。每个斩波器的触发器由振荡器的脉冲调节,当负载电流通过高时检测电阻的电压就相对提高,当电压达到REF时,将触发器重置,切断输出,直到第二个振荡脉冲到来时。此线路输出是一恒定速率的PWM信号,当L297得CONTROL端的输入决定斩波器相应的相位线A、B、C、D或抑制NH1和NH2起作用。CONTROL为高电平时,对A、B、C、D由抑制作用

39、,为低电平时,则对IN1和IN2有抑制作用,从而可对电机转向和转矩进行控制。图3.4 L297八步格雷码图 图3.5 L297内部斩波线路图L297 各引脚功能说明1 脚(SYNG)斩波器输出端。如多个 297 同步控制,所有的SYNC端都要连在一起,共用一套振荡元件。如果使用外 部时钟源,则时钟信号接到此引脚上。2 脚(GND)接地端。3 脚(HOME)集电极开路输出端。当L297 在初始状态(ABCD=0101)时,此端有指示。当此引脚有效时,晶体管开路。4 脚(A)A相驱动信号。5 脚(INH1)控制A相和B相的驱动极。当此引脚为低电平时,A相、B相驱动控制被禁止;当线圈级断电时,双极性

40、桥 用这个信号使负载电源快速衰减。若CONTROL端输入是低电平时,用斩波器调节负载电流。6 脚(B)B相驱动信号。7 脚(C)C相驱动信号。8 脚(INH2)控制C相和D相的驱动级。作用同INH1 相同。9 脚(D)D相驱动信号。10 脚(ENABLE)L297 的使能输入端。当它为低电平时,INH1,INH2,A,B,C,D都为低电平。当系统被复位时 用来阻止电机驱动。11 脚(CONTROL)斩波器功能控制端。低电平时使INH1 和INH2 起作用,高电平时使A,B,C,D起作用。12 脚(Vcc)+5V电源输入端。13 脚(SENS2)C相、D相绕组电流检测电压反馈输入端。14 脚(S

41、ENS1)A相、B相绕组电流检测电压反馈输入端。15 脚(Vref )斩波器基准电压输入端。加到此引脚的电压决定绕组电流的峰值。16 脚(OSC)斩波器频率输入端。一个RC网络接至此引角以决定斩波器频率,在多个L297 同步工作时其中一个接到RC网络,其余的此引角接地,各个器件的脚 I (SYNC)应连接到一起这样可杂波的引入问题如图 5 所示。17 脚(CW/CCW)方向控制端。步进电机实际旋转方向由绕组的连接方法决定。当改变此引脚 的电平状态时,步进电机 反向旋转。18 脚(CLOCK)步进时钟输入端。该引脚输入负脉冲时步进电机向前步进一个增量,该步进是在信号 的上升沿产生。19 脚(HA

42、LF/FULL)半步、全步方式 选择端。此引脚输入高电平时为半步方式(四相八拍),低电平时为全步方式。如 选择全步方式时变换器在奇数状态,会得到单相工作方式(单四拍)。20 脚(RESET)复位输入端。此引脚输入负脉冲时,变换器恢复初始状态 (ABCD=0101)。L297 能产生单四拍、双四拍和四相八拍工作所需的适当相序。3 种方式的驱动相序都可以很容易地根据变换器输出的格雷 码的顺序产生,格雷码的顺序直接与四八拍(半步方式)相符合 ,只要在脚 19 输入一高电平即可得到。其波形图如图 3.6 所 示。图3.6 L297四相八拍波形图3.1.2 L298步进电机驱动芯片介绍L298是ST公司

43、生产的一种高电压、大电流电机驱动芯片。该芯片的主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等感性负载;采用标准TTL逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。图3.7 L298内部结构图图3.8 L298引脚封装图L298各引脚功能说明:1脚(SENSE A)电流监测端SEN1、SEN2分别为两个H桥的电流反馈脚

44、,不用时可以直接接地2脚(OUTPUT 1) 1Y1输出端3脚(OUTPUT 2) 1Y2 输出端4脚(VS)功率电源电压,此引脚与地必须连接100nF电容器5脚(INPUT 1)1A1输入端,TTL电平兼容6脚(ENABLE A)TTL电平兼容输入 1EN使能端,低电平禁止输出7脚(INPUT 2)1A2输入端,电平兼容8脚(GND)地9脚(VSS)逻辑电源电压。 此引脚与地必须连接100nF电容器10脚(INPUT 3)2A1输入端,电平兼容11脚(ENABLE B) TTL电平兼容输入 2EN使能端,低电平禁止输出12脚 (INPUT 4) 2A2输入端,TTL电平兼容13脚(OUTPU

45、T 3) 2Y1输出端14脚 (OUTPUT 4) 2Y2输出端3.1.3 驱动电路设计步进电机驱动由两个L297和一个L298组成,由上述可知 ,L297内部带有斩波恒流电路 ,绕组相电流峰值由 Vref确定 ,因此驱动器硬件电路设计的基本思想是为配备合适的RC网络 ,调整斩波振荡脉冲频率的同时 ,利用DA转换产生与L297相序一致的细分参考电压的变化阶梯 ,并作为L297的Vref 引脚输人 ,从而控制斩波时刻绕组相电流峰值的一个Vref 输人端,在采用DA变换产生与L297相序一致的细分参考电压的变化阶梯过程,通过斩波电路和L297产生的8步格雷码给L298提供细分电流和步进电机驱动信号

46、,从而驱动步进电机转动。为了同步和消除杂波将两个SYNC连接在一起,共用同一套外部振荡电路一片L297的OSC要接一个外部振荡器,另一个L297的OSC要接地,CONTROL接低电平使A、B、C、D起作用,同时抑制INH1和INH2,ENABLE接高电平是L297处于工作状态。CW/CWW接单片机P1.0口来控制步进电机的正反转。CLOCK接P1.1口控制步进电机转动快慢。图3.9 步进电机驱动电路图3.2 DA转换芯片介绍和电路设计3.2.1 DAC0832介绍DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应

47、用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。 DAC0832是双列直插式8位D/A转换器。能完成数字量输入到模拟量(电流)输出的转换。图3.10和图3.11分别为DAC0832的引脚图和内部结构图。其主要参数如下:分辨率为8位,转换时间为1s,满量程误差为±1LSB,参考电压为(-10+10)V,供电电源为(+5+15)V,逻辑电平输入与TTL兼容。DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号 /XFER。当ILE为高电

48、平,片选信号 /CS 和写信号 /WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当 /WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。对第二级锁存来说,传送控制信号 /XFER 和写信号 /WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当 /WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。图3.10 DAC0832引脚图图图3.11 DAC0832内部结构图DAC0832各引脚功能说明:D

49、0D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错); ILE:数据锁存允许控制信号输入线,高电平有效; CS:片选信号输入线(选通数据锁存器),低电平有效; WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存; XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效; WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时

50、,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。 IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化; IOUT2:电流输出端2,其值与IOUT1值之和为一常数; Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度; Vcc:电源输入端,Vcc的范围为+5V+15V; VREF:基准电压输入线,VREF的范围为-10V+10V; AGND:模拟信号地 DGND:数字信号地 3.2.2 DA转换电路设计本设计采用两个DAC0832来提供L297斩波电流所需要的参考电压,其中一个设计如图3.10。DAC0832的

51、8位输入接单片机的P0口,因为P0口为一个8位漏极开路双向I/O口,所以必须外接上拉电阻,DAC0832采用单缓冲工作方式,即一个寄存器工作于直通状态,另外一个工作于受控锁存状态,本设计把DAC寄存器工作于直通状态,输入寄存器工作于搜空锁存状态,即XREF和WR2一直处于有效状态、低电平,ILE处于有效状态、高电平,CS处于低电平有效状态,当WR1从低电平到高电平时,DA转换输入锁存到DAC寄存器,数据进入DA转换器,开始DA转换。由于L297的参考电压位于05V,所以参考电压接-5V,工作电压+5V。DAC0832转换后电流经过运放反向端,进行反向放大,由于DAC运用的是T型网络,最大电流I

52、out1=255Vref/256Rfb,RFB接运放LM324输出端,所以输出的最大电Vo=255Vref/256图3.11 DA转换电路图3.3电源电路设计220V由双组线圈变压器得到两路低压交流电,再分别由整流桥整流得到直流,电容滤波后分别经过三端稳压块7815和7805得到15V、5V直流,直流输出后加一个电容滤波得到平滑的直流电压,如图3.8所示。图3.8 稳压电源电路第4章 程序设计4.1主程序设计主程序的目的判断步进电机的细分数,然后调用步进电机细分函数,实现步进电机细分。主程序的流程图如图4.1图4.1 主程序流程图系统初始化主要是关闭L297和DAC0832使其不工作,设置定时

53、计数器和外部中断的的工作方式,定时计数器和外部中断的优先级,而程序的正反转不影响步进电机的启动暂停,所以优先级高于启动/暂停,因为定时器0决定L297的CLOCK接口的脉冲周期,保证步进电机正常转动所以中断优先级要高,然后就是要保证没有按下启动键,程序不能运行,把启动标志位置1。程序实现如下:enable = 0;/L297使能端关闭cs = 1;/DA不转换PX1 = 1;/外部中断1为高优先级PT0 = 1;/设置定时中断0为高优先级EX0 = 1;/开启外部中断0EX1 = 1;/开启外部中断1IT0 = 0;/设置为低电平触TMOD = 0x11;/定时/计数器为定时状态 方式一定时E

54、T0 = ET1 = 1;/允许中断IT0 = IT1 = 0;/低电平触发start = 1; /启动标志位EA = 1;/开启外部中段 while(start);/开始启动在程序启动之后,必须要将各个计数器清零,把各个标志分别执行默认的动作 count0 = 0;/定时器0计数 count1 = 0;/定时器1计数 nstep = 1;/细分数默认为不细分 half = 0;/CLOCK高低电平标记 k = 0;/暂停标记 默认不暂停判断细分方式就是读取外部开关,当读到某个开关为低电平时代表着细分数,P1.2代表2细分,P1.3代表4细分,P1.4代表8细分,P1.5代表16细分。读取细分

55、数后,设置细分标记,然后转入细分函数执行细分,默认情况下不进行细分,细分执行后关闭定时器。代码如下: if(P12 = 0) nstep = 2; else if(P13 = 0) nstep = 4; else if(P14 = 0) nstep = 8; else if(P15 = 0) nstep = 16;stepmotor();/调用细分函数 4.2细分程序设计细分程序主要是根据各个标志和计数器给P0口赋初值,提供斩波电流所需要的量化值电压。主要流程是先判断细分数nstep,根据细分数确定T1定时器定时的时间,然后给定时器T0和T1赋初值,开启定时器,开启L297使其工作,由于L297每八个CLOCK周期使步进电机完成一个步进周期,然后根据定时器0的计数器coun0和定时器1的计数器count1确定L297所需要的参考电压,开启DA转换,提供DA

温馨提示

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

评论

0/150

提交评论