1、常熟理工学院课 程 设 计题目 基于单片机的直流电机调速系统设计班 级 ZB02131 学 号 ZB0213109学 生 姓 名 季顺祥 目 录摘要.11总体方案设.1 2. 硬件电路设计 .22.1 单片机最小系统的设计 .22.1.1 单片机 AT89S52.22.1.2 复位电路及时钟电路 .32.2 直流电机驱动电路设计 .42.3 显示模块设计 .52.4 键盘电路设计 .63. 软件编程 .63.1 PWM波软件设计 .73.2 数码管显示设计 .84. 系统调试与分析 .85. 总结与展望.10参考文献 .10附录 1 总体电路图 .11附录 2源程序 .11基于单片机的直流电机
2、调速系统设计第 1 页摘要本文设计的是基于单片机的直流电机调速系统设计,本系统设计以AT89C51单片机为核心,分成两个模块,一是直流电机控制系统:此系统采用PWM使直流电机以 5个弹跳按钮作为输入达到控制直流电机的停止、加速、减速、正转、反转;另一个是转速显示系统:此系统主要实现对转速的计数,并用 LED数码管将其结果显示。其中采用采用 PWM可以较为简单的对直流电机转速的控制;LED 数码管可以准确的将转数显示出来,在实际应用中很方便。直流电动机具有优良的调速特性,调速平滑,方便,调速范围广,过载能力大,能承受频繁的冲击负载,可实现频繁的无级快速起动、制动和反转;能满足生产过程中自动化系统
3、各种不同的特殊运行要求。电动机调速系统采用微机实现自动控制,是电气传动发展的主要方向之一。采用微机控制后,整个调速系统体积小、结构简单、可靠性高、操作维护方便,电动机稳态运转时转速精度可达到较高水平,静动态各项指标均能较好地满足工业生产中高性能电气传动的要求。本文介绍了基于单片机的直流电机PWM调速的基本方法,直流电机调速的相关知识以及PWM调速的基本原理和实现方法。重点介绍了基于MCS一51单片机的用软件产生PWM信号以及信号占空比调节的方法。对于直流电机速度控制系统的实现提供了一种有效的途径。1. 总体方案设计89C51单片机为核心的直流电机控制系统控制简图如图1所示,由软件转换成PWM
4、信号,并由P3.0、P3.1输出,经驱动电路输出给电机,从而控制电机得电与失电。软件采用定时中断进行设计。单片机上电后,系统进入准备状态。当按动启动按钮后,根据P3.0为高电平实现电机正转,P3.1为高电平时实现电机反转。根据不同的加减速按钮,调整P3.0/ P3.1输出高低电平时的预定值,从而可以控制P3.0/ P3.1输出高低电平时的占空比,进而控制电压的大小。控制程序应用于电机的加减速。在电动机驱动信号方面,我们采用了占空比可调的周期矩形信号控制。脉冲频率对电动机转速有影响,脉冲频率高连续性好,但带带负载能力差脉冲频率低则反之。经实验发现,脉冲频率在 40Hz以上,电动机转动平稳,但加负
5、载后,速度下降明显,低速时甚至会停转;脉冲频率在 10Hz以下,电动机转动有明显跳动现象。实验证明,脉冲频率在 15Hz-30Hz时效果最佳。而具体采用的频率可根据个别电动机性能在此范围内调节。通过 P3.0输入高电平信号 P3.1基于单片机的直流电机调速系统设计第 2 页输入低电平与 P3.0输入低电平 P3.1输入信号分别实现电动机的正转与反转功能。通过对信号占空比的调整来对直流电机进行调节。图 1 系统硬件框图2. 硬件电路设计由单片机硬件设计原理可知:(1)尽可能采用功能强的芯片,以简化电路;(2)留有余地。在设计硬件电路时,要考虑到将来修改、扩展的方便。2.1 单片机最小系统的设计单
6、片机最小系统:所谓最小系统就是指由单片机和一些基本的外围电路所组成的一个可以工作的单片机系统。一般来说,它包括单片机,晶振电路和复位电路。2.1.1 单片机 AT89C51AT89C51 8位单片机是 MSC-51系列产品的升级版,有世界著名半导体公司 ATMEL在购买 MSC-51设计结构后,利用自身优势技术(掉电不丢数据)闪存生产技术对旧技术进行改进和扩展,同时使用新的半导体生产工艺,最终得到成型产品。与此同时,世界上其他的著名公司也通过基本的 51内核,结合公司自身技术进行改进生产,推广一批如 51F020等高性能单片机。AT89C51片内集成 256字节程序运行空间、8K 字节 Fla
7、sh存储空间,支持最大 64K外部存储扩展。根据不同的运行速度和功耗的要求,时钟频率可以设置在 0-33M之间。片内资源有 4组 I/O控制端口、3 个定时器、8 个中断、软件设置低能耗模式、看门狗和断电保护。可以在 4V到 5.5V宽电压范围内正常工作。不断发展的半导体工艺也让该单片机的功耗不断降低。同时,该单片机支持计算机并口下载,简单的数字芯片就可以制成下载线,仅仅几块钱的价格让该型号单片机畅销 10年不衰。根据不同场合的要求,这款单片机提供了多种封装,本次设计根据最小系统有时需要更换单片机的具体情况,使用双列直插AT89C51显示模块驱动模块电源模块输入模块基于单片机的直流电机调速系统
8、设计第 3 页DIP-40的封装。AT89C51引脚图如图 2所示。图 2 AT89C51 引脚图2.1.2 复位电路及时钟电路复位电路和时钟电路是维持单片机最小系统运行的基本模块。复位电路通常分为两种:上电复位和手动复位,如图 3,图 4所示。RST单C1GNDV?W-PB图 3 上电复位 图 4 手动复位有时系统在运行过程中出现程序跑飞的情况,在程序开发过程中,经常需要手动复位。所以本次设计选用手动复位。高频率的时钟有利于程序更快的运行,也有可以实现更高的信号采样率,从而实现更多的功能。但是告诉对系统要求较高,而且功耗大,运行环境苛刻。考虑到单片机本身用在控制,并非高速信号采样处理,所以选
9、取合适的频率即可。合适频率的晶振对于选频信号强度准确度都有好处,本次设计选取 12MHz基于单片机的直流电机调速系统设计第 4 页无源晶振接入 XTAL1和 XTAL2引脚。并联 2个 30pF陶瓷电容帮助起振。最小系统如图 5所示。图 5 最小系统2.2 直流电机驱动电路设计由于单片机 P3口输出的电压最高才有 5V,难以直接驱动直流电机。所以我们需要使用恒压恒流桥式 2A驱动芯片 L298N来驱动电机。L298N 可接受标准TTL逻辑电平信号 VSS,V SS可接 4.57V 电压。4 脚 VS接电源电压,V S电压范围VIH为2.546V。输出电流可达 2.5A,可驱动电感性负载。1 脚
10、和 15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298 可驱动 2个电动机,OUT1,OUT2 和 OUT3,OUT4 之间可分别接电动机,本实验装置我们选用驱动一台电动机。5,7,10,12 脚接输入控制电平,控制电机的正反转。E nA,E nB接控制使能端,控制电机的停转。同时需要加四个二极管在电机的两端,防止电机反转的时候产生强大的冲击电流烧坏电机。具体驱动电路如图6所示。基于单片机的直流电机调速系统设计第 5 页图 6 驱动电路2.3 显示模块设计在本设计课题中采用的是 7段 4位共阳极 LED数码管,它的引脚图如图 7所示。图 7 7段 4位共阳极 LED
11、数码管引脚图7段 LED数码管是利用 7个 LED(发光二极管)外加一个小数点的 LED组合而成的显示设备,7 段数码管分共阴和共阳两种显示方式,本设计中采用共阳极显示器。共阳极显示器的发光二极管的阳极连接在一起,当公共阳极接电源+5V时,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。通常将控制发光二极管发光的 8位字节数据编码称为 LED显示的段选码,要构成多位 LED显示时,除需要段选线外,还需要位选线,以确定段选码对应的显示位位选线控制第几个 LED显示。段选线控制显示字形。7SEG-MPX-CA基于单片机的直流电机调速系统设计第 6 页2.4 键盘电路设计正转、反
12、转、急停、加速、减速五个开关分别与单片机的P1.0,P1.1,P1.2,P1.3,P1.4 相连,然后再与地相连。急停实现直流电机的停转,正转实现直流电机的正转,反转实现直流电机的反转,加速实现直流电机的加速,减速实现直流电机的减速,其电路如图 10所示。图 8 按键电路3. 软件编程在单片机系统的程序的设计开发中,单片机就如同整个系统的交通中枢,而程序就是组成交通中枢的条条大道,各个部分的模块化的程序就是整个系统的组成成份。软件编写的好坏,语句运用的是否简洁直接关系单片机的工作效率。在各个模块化的程序中尽量用最少的语句作最多的事情,不让语句出现歧义,这样就可以使整个程序可以在系统中更好的运行
13、,使单片机工作效率大大的提高。该课题的软件设计采用了模块化设计的思想即将程序划分为若干个相对独立的功能模块,画出每一个功能模块的详细流程图,并根据流程图编写程序,最后按照软件设计的总体结构框图,将各模块连接成一个完整的主程序。基于单片机的直流电机调速系统设计第 7 页在主程序的设计中要合理地调用各模块程序。模块化设计的优点是:无论是硬件还是软件,每一个模块都相对独立,故能独立地进行设计、研制、调试和修改,从而使复杂的工作得以简化。模块之间的相互独立也有助于研制任务的分解和设计人员之间的分工合作,这样可提高工作效率和仪表的研制速度。本利用P3口,编制程序输出一串脉冲,经放大后驱动直流电机,改变输
14、出脉冲的电平的持续时间,达到使电机正转、反转、加速、减速、停转等目的 10-11。由软件编程从P3.0/P3.1管脚产生PWM 信号,经驱动电路输出给电机,从而控制电机得电与失电。软件采用延时法进行设计。单片机上电后,系统进入准备状态。当按动启动按钮后,根据P3.0为高电平时实现电机正转,P3.1为高电平时实现电机反转。根据不同的加减速按钮,调整P3.0/ P3.1输出高低电平时的占空比,从而可以控制P3.0/ P3.1输出高低电平时的有效值,进而控制电机的加减速。其总体流程图如图 9所示NLED 显示占空比图 9 软件总体流程图3.1 PWM波软件设计通过控制总中断使能 EA控制电机的开关,
15、同时使能对红外对接头输出的方波在单位时间内脉冲个数的计数。其中定时器 T0,T1分别对脉冲的宽度、红外对接头输出的脉冲数对应的 1秒时间定时。对脉冲宽度的调整是通过改变高电开始键盘扫面是否有键按下Y急停反转 加速 减速正转基于单片机的直流电机调速系统设计第 8 页平的定时长度,由变量 high控制。变量 swap、 sub_speed 、add_speed 分别实现电机的转向、加速、减速。程序流程图如图 10所示。图 10 PWM流程图3.2 数码管显示设计检测按键,将转速通过数码管显示出来,并根据数据的变化,变化显示。流程图如图 11。4. 系统调试与分析系统的硬件、软件独调和系统调试是系统最后的步骤也是系统特别重要的环节,因为设计和开发出的系统是否成功,功能是否完善只有在这里才能显现出来。所以为了保证设计系统能够正常工作,必须对软件和硬件部分的每一个Add/Sub/Swap 是否按下数据初始化调整 PWM 波占空比/转向Close 是否按下电机停止转动开始结束YYNN