基于单片机毕业论文.docx
基于单片机毕业论文内蒙古科技大学 本科生毕业设计说明书 题 目:基于单片机的学生姓名:学 号:专 业:自动化班 级:指导教师: PWM直流调速系统设计 06 内蒙古科技大学毕业设计说明说 基于单片机的PWM直流调速系统设计 摘要 随着时代的进步和科技的发展,电机调速系统在工农业生产、交通运输以及日常生活中起着越来越重要的作用,因此,对电机调速的研究有着积极的意义.长期以来,直流电机被广泛应用于调速系统中,而且一直在调速领域占居主导地位。基于单片机的直流电机调速系统硬件电路的标准化程度高,制作成本低,且不受器件温度漂移的影响。其控制软件能够进行逻辑判断和复杂运算。系统的稳定性好,可靠性高。直流电动机具有优良的起、制动性能,宜于在广泛范围内平滑调速。在轧钢机、矿井卷机、挖掘机、金属切削机床、造纸机、高层电梯等领域中得到广泛应用。 本设计是基于单片机控制的PWM直流电机调速系统,系统以AT89C52单片机为核心,以2A、1000r/min小直流电机为控制对象,以L298N为H桥驱动芯片实现速度、电流反馈双闭环。采用PID控制算法,调节PWM 占空比从而控制电机两端电压,以达到调速的目的。用4*3键盘输入有关控制信号及参数,可以实现电机的启制动、正反转、速度调节。并在4位LED上实时显示输入参数及动态转速。 关键词:单片机、直流电机、PWM、 PID I 内蒙古科技大学毕业设计说明说 Based on SCM PWM dc speed control system design Abstract With the progress of The Times and the development of science and technology, motor speed system in agricultural production, transportation and daily life plays a more and more important role in motor speed, therefore, the research has positive significance. For a long time, have been widely applied in dc motor control system, and has been inhabited areas in speed dominant. Based on SCM dc motor speed control system of high degree of standardization of hardware circuit, low cost, and the temperature drift. Device, The control software to logic and complex operation. The system has good stability and reliability. Dc motor with excellent, braking performance, and in a wide range smooth speed. In the mill, mine machine, excavator, metal cutting machine, paper machine, high-level elevator is widely used in the fields. The design is based on single chip microcomputer control system of dc motor control PWM, by AT89C52 singlechip system, and 1000r/min small double-a dc motor to control, L298N H bridge to drive chip realize speed, double loop current feedback. PID control algorithm, regulate and control PWM occupies emptiescompared to achieve both voltage motor speed. Use 4 * 3 keyboard input signal and the relevant control parameters, can realize the rev brake motor speed regulation, and positive &negative. And in four LED on real-time display input parameters and dynamic speed. Keywords : monolithic integrated circuits, a direct motor,PWM,PID II 内蒙古科技大学毕业设计说明说 目录 基于单片机的PWM直流调速系统设计 . I 摘要. I Abstract . II 第一章 绪论. 1 1.1课题背景. 1 1.2课题功能. 1 第二章 系统硬件电路的设计. 2 2.1 系统总体设计. 2 2.1.1 系统总体设计框图. 2 2.1.2单片机的选择及其简介. 2 2.1.3 其他芯片简介. 6 2.2 PWM信号发生电路设计 . 19 2.2.1 PWM的基本原理 . 19 2.2.2 PWM信号发生电路设计 . 20 2.2.3 H桥芯片的工作原理. 21 2.3 主电路设计. 24 2.4 转速和电流的测量. 24 2.5 AD转换 . 26 2.6显示与键盘电路. 26 第三章 系统软件程序的设计. 28 3.1 PID控制算法原理及流程图 . 28 3.2 系统部分程序的设计.29 3.2.1 单片机资源分配.29 3.2.2 程序流程图. 30 结论. 33 参考文献. 34 附录. 35 致谢. 48 III 内蒙古科技大学毕业设计说明说 第一章 绪论 1.1课题背景 随着时代的进步和科技的发展,电机调速系统在工农业生产、交通运输以及日常生活中起着越来越重要的作用,因此,对电机调速的研究有着积极的意义.长期以来,直流电机被广泛应用于调速系统中,而且一直在调速领域占居主导地位,这主要是因为直流电机不仅调速方便,而且在磁场一定的条件下,转速和电枢电压成正比,转矩容易被控制;同时具有良好的起动性能,能较平滑和经济地调节速度。因此采用直流电机调速可以得到良好的动态特性。由于直流电动机具有优良的起、制动性能,宜于在广泛范围内平滑调速。在轧钢机、矿井卷机、挖掘机、金属切削机床、造纸机、高层电梯等领域中得到广泛应用。近年来交流调速系统发展很快,然而直流控制系统毕竟在理论上和在时间上都比较成熟,而且从反馈闭环控制的角度来看,它又是交流系统的基础,长期以来,由于直流调速系统的性能指标优于交流调速系统。因此,直流调速系统一直在调速系统领域内占重要位置。 1.2课题功能 本论文介绍了基于AT89C52单片机来实现最优PID控制的直流脉冲调速系统,并且详细论述了该系统的控制方法、结构、参数设计、程序设计等方面的问题。该系统结构简单,调速性能好,性能价格比高,真正实现了直流调速系统的高精度控制。 本设计是基于单片机控制的PWM直流电机调速系统,系统以AT89C52单片机为核心,以2A、1000r/min小直流电机为控制对象,L298N为H桥驱动芯片实现速度、电流反馈双闭环。采用PID控制算法,调节PWM 占空比从而控制电机两端电压,以达到调速的目的。用4*3键盘输入有关控制信号及参数,可以实现电机的启制动、正反转、速度调节。并在4位LED上实时显示输入参数及动态转速。 1 内蒙古科技大学毕业设计说明说 第二章 系统硬件电路的设计 2.1 系统总体设计 2.1.1 系统总体设计框图 本设计的任务是基于单片机控制的PWM直流电机调速系统,系统以单片机为核心,以小直流电机为控制对象,实现速度、电流反馈双闭环、采用PID控制算法。方便的人机对话接口,用键盘输入有关控制信号及参数,可以实现电机的启制动、正反转、速度调节。并在LED上实时显示输入参数及动态转速。因此整个系统大致包括五部分:单片机、显示电路、键盘电路、驱动电路、检测电路。 根据设计任务,提出如图2.1所示的硬件电路组成框图。 图2.1 2.1.2单片机的选择及其简介 本设计选用了AT89C52单片机,下面对它进行介绍。图2.2给出了At89C52的芯片引脚结构。 at89c52单片机是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8K bytes的可反复擦写的Flash只读程序存储器和256bytes的随机数据存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容。功能强大的at89c52单片机适合于许多较为复杂的控制应用场合。 At89C52 主要性能参数 2 内蒙古科技大学毕业设计说明说 与Mcs-51产品指令和引脚完全兼容。 8字节可重擦写FLASH闪速存储器 1000 次擦写周期 全静态操作:0HZ-24MHZ 三级加密程序存储器 256X8字节内部RAM 32个可编程I/0口线 3个16 位定时计数器 8个中断源 可编程串行UART通道、低功耗空闲和掉电模式 At89C52功能特性 AT89C52 提供以下标准功能:8字节FLASH闪速存储器,256字节内部RAM , 32个I/O口线,3个16 位定时计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89c52可降至OHz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU 的工作,但允许RAM,定时计数器串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位. 图2.2 AT89C52引脚图 3 内蒙古科技大学毕业设计说明说 At89C52部分引脚功能说明 XTAL1:片内晶振电路反相放大器的输入端 XTAL2:片内晶振电路反相放大器的输出端。 P0:P0口是一组8位漏极开路型双向I/O 口,即地址/数据总线复用口。作为输出口用时每位能以吸收电流的方式驱动8个TTL 逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。 在访问外部数据存储器或程序存储器时,这组口线分时转换地址和数据总线复用,在访问期间激活内部上拉电阻。 在FLASH中编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1口:P1 是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流。与AT89C51不同之处是,Pl.0 和P1.1还可分别作为定时/计数器2 的外部计数输入和外部触发输入4个TTL逻辑电路。对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。 在访问外部程序存储器或16位地址的外部数据存储器时,P2送出高8 位地址数据。在访问8位地址的外部数据存储器、如执行MOVXRI指令)时,P2口输出P2锁存器的内容。 FLASH编程或校验时,P2亦接收高位地址和一些控制信号。 P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。 P3口除了作为I/0口线外,更重要的用途是它的第二功能,如表2.1所示。 4 内蒙古科技大学毕业设计说明说 此外,P3口还接收一些用于FLASH闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 表2.1 端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 第二功能 RXD RD P3.7 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。 对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器区中的8EH单元的D0位置位可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。 PSEN:程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 5 内蒙古科技大学毕业设计说明说 EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H-FFFFH ) , EA端必须保持低电平(接地)需注意的是:如果加密位LBI被编程,复位时内部会锁存EA端状态。如EA端为高电平, CPU则执行内部程序存储器中的指令。 flash存储器编程时,该引脚加上+12V的编程允许电源VPP ,当然这必须是该器件是使用12V编程电压VPP 。 AT89C52特殊功能寄存器 在AT89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器AT89C52 单片机扩展电路及分析 AT89C52 提供以下标准功能:8字节FLASH闪速存储器,256字节内部RAM , 32个I/O口线,3个16 位定时计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。由于AT89C52具有256字节内部RAM。 对本设计已经足够使用,因此不需要再扩展外部数据存储器。但本设计需外扩I/O接口,因此采用8255扩展外部I/O口。因为单片机的0口是数据总线和低八位地址线共用的,所以需要使用地址锁存器74373。由此将0口地址送于74373锁存,以便下一时刻,口传送数据。 2.1.3 其他芯片简介 2.1.3.1 8255的简介 8255是一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.它具有24个可编程设置的I/O口,即3组8位的I/O口,为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4PC7),B组包括B口及C口(低4位,PC0PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定。图2.3给出了8255芯片引脚结构. 6 内蒙古科技大学毕业设计说明说 8255引脚功能 RESET:复位输入线,当该输入端外接高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。 图2.3 8255引脚图 CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输. RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。 D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。 PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。 PB0PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。 PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每7 内蒙古科技大学毕业设计说明说 个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。8255 有4 个内部缓存器,分别是A 端口缓存器、B 端口缓存器、C 端口缓存器及控制缓存器。 当微电脑要读写8255 的内部缓存器时,必须利用A1 及A0 指定要对那一个暂器进行读写 动作。下表为A1、A0 配合RD、WR及CS 的控制状态表。 表2.2 A1 0 0 0 1 0 0 1 1 × 1 AD RR WS C操作情形 0 0 1 0 A 端口数据送到总线 1 0 1 0 B 端口数据送到总线 0 0 1 0 C 端口数据送到总线 0 1 0 0 总线数据存入A 端口 1 1 0 0 总线数据存入B 端口 0 1 0 0 总线数据存入C 端口 1 1 0 0 总线数据存入控制缓存器 × × ×1 总线呈高阻抗 1 0 1 0 错误操作 8 内蒙古科技大学毕业设计说明说 × × ×1 0 总线呈高阻抗 2.1.3.2 74HC373简介 373为三态输出的八 D 透明锁存器,共有 54/74S373 和 54/74LS373 两种线路结构型式。 74HC373其主要电器特性的典型值如下(不同厂家具体值有差别): 型号 tPd PD 54S373/74S373 7ns 525mW 54LS373/74LS373 17ns 120mW 373 的输出端 O0O7 可直接与总线相连。当三态允许控制端 OE 为低电平时,O0O7 为正常逻辑状态,可用来驱动负载或总线。当 OE 为高电平时,O0O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。 当锁存允许端 LE 为高电平时,O 随数据 D 而变。当 LE 为低电平时,O 被锁存在已建立的数据电平。当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善 400mV。 图2.4给出了74HC373芯片引脚结构。 图2.4 74HC373引脚图 2.1.3.3 L298N简介 9 内蒙古科技大学毕业设计说明说 L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以方便的驱动两个直流电机,或一个两相步进电机。 图2.5是L298N内部结构图 L298N可接受标准TTL逻辑电平信号VSS,VSS可接457 V电压。4脚VS接电源电压,VS电压范围VIH为2546 V。输出电流可达25 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,如图2.7此装置我们选用驱动一台电动机。5,7,10,12脚接输入控制电平,控制电机的正反转。EnA,EnB接PWM端,控制电机的速度。表2.3是L298N功能逻辑图。 图2.5 表2.3 10 内蒙古科技大学毕业设计说明说 In3,In4的逻辑图与表1.3相同。由表2.3可知EnA为低电平时,电机停止运行,当EnA为PWM时,输入电平为一高一低,电机正或反转。同为低电平电机停止,同为高电平电机刹停。下图是其引脚图: 图2.6 11 内蒙古科技大学毕业设计说明说 图2.7 图2.8为采用内部集成有两个桥式电 路的专用芯片L298所组成的电机驱动电路。驱动芯片L298是驱动二相和四相步进电机的专用芯片,我们利用它内部的 桥式电路来驱动直流电机,这种方法有一系列的优点。每一组PWM波用来控制一个电机的速度,而另外两个I/O口可以控制电机的正反转,控制比较简单,电路也很简单,一个芯片内包含有8个功率管,这样简化了电路的复杂性,如图所示IOB10、IOB11控制第一个电机的方向,IOB8输入的PWM控制第一个电机的速度;IOB12、IOB13控制第二个电机的方向,IOB9输入的PWM控制第二个电机的速度。 12 内蒙古科技大学毕业设计说明说 图2.8 2.1.3.4 AD574简介 AD574A 是美国模拟数字公司推出的单片高速 12 位逐次比较型 A/D 转换器,内置双极性电路构成的混合集成转换芯片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容器件即可构成一个完整的 A/D 转换器. AD574是一种常用的12位AD变换芯片,也可以实现8位转换。有两个模拟信号输入端,分别为10V输入端和20V输入端,各自都既允许单极性输入,也允许双极性输入。但芯片本身是单路工作,只允许一个模拟信号输入端接入信号。它可以和16位CPU相连接,也可以和8位CPU相连接。只需要适当的改变某些控制引脚的接法。AD574可以通过简单的三态门 、锁存器接口与微机的系统总线相连接,也可以通过编程接口与系统总线相连接。采用查询STS状态可判断变换是否完成。 AD574A主要功能特性如下: 分辨率:12位 非线性误差:小于±1/2LBS或±1LBS 转换速率:25us 模拟电压输入范围:010V和020V,0±5V和0±10V两档四种 电源电压:±15V和5V 数据输出格式:12位/8位 芯片工作模式:全速工作模式和单一工作模式 13 内蒙古科技大学毕业设计说明说 图2.9 AD574引脚图 AD574A的引脚结构如图2.9。 1. Pin1(+V)+5V电源输入端。 2. Pin2(12/8 )数据模式选择端,通过此引脚可选择数据纵线是12位或8位输出。 3. Pin3(CS )片选端。 4. Pin4(A0)字节地址短周期控制端。与 端用来控制启动转换的方式和数据输出格式。须注意的是, 端TTL电平不能直接+5V或0V 连接。 5. Pin5(R/C)读转换数据控制端。 6. Pin6(CE)使能端。 7. Pin7(V+)正电源输入端,输入+15V电源。 8. Pin8(REF OUT)10V基准电源电压输出端。 9. Pin9(AGND)模拟地端。 10. Pin10(REF IN)基准电源电压输入端。 11. Pin(V-)负电源输入端,输入-15V电源。 12. Pin1(V+)正电源输入端,输入+15V电源。 13. Pin13(10V IN)10V量程模拟电压输入端。 14. Pin14(20V IN)20V量程模拟电压输入端。 15. Pin15(DGND)数字地端。 14 内蒙古科技大学毕业设计说明说 16. Pin16Pin27(DB0DB11)12条数据总线。通过这12条数据总线向外输出A/D转换数据。 17. Pin28(STS)工作状态指示信号端,当STS=1时,表示转换器正处于转换状态,当STS=0时,声明A/D转换结束,通过此信号可以判别A/D转换器的工作状态,作为单片机的中断或查询信号之用。 AD574工作时序的控制功能状态表。 表 2.4 2.1.3.5 LF398简介 LF398是一种反馈型采样保持放大器,也是目前较为流行的通用型采样保持放大器。与LF398结构相同的还有LF198/LF298等,都是由场效应管构成,具有采样速度高,保持电压下降慢和精度高等特点。 当作为单一放大器时,LF398直流增益精度为0.002%,采样时间小于6us时精度可达0.01%;输入偏置电压的调整只需在偏置端(2脚)调整即可,并且在不降低偏置电流的情况下,带宽允许1MHz,其主要技术指标有: 1、工作电压:+5-+18V 2、采样时间:<10us 3、可与TTL、PMOS、CMOS兼容 4、当保持电容为0.01uF时,典型保持步长为0.5mV 5、低输入漂移,保持状态下输入特性不变 6、在采样或保持状态时高电源抑制 下图为集成采样/保持器-LF398引脚图。 15 内蒙古科技大学毕业设计说明说 图2.10 LF398引脚图 2.1.3.6 3020T简介 霍尔传感器是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040等,这种传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路门输出,工作电压范围宽,使用非常方便。如图2.11所示是CS3020的外形图,将有字面对准自己,三根脚从左右 分别是Vcc,地,输出。 图2.11 CS3020外形图 使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。 这种传感器不怕灰尘、油污,在工业现场应用广泛。 2.1.3.7 CS040G简介 CS040G系列霍尔电流传感器 16 内蒙古科技大学毕业设计说明说 应用霍尔效应开环原理的电流传感器,能在电隔离条件下测量直流、交流、脉冲以及各种不规则波形的电流。 结构参数: 图2.12 引脚说明: 1:+ 15V 2:0V(电源地) 3:Vout 4:-15V 表2.5结构参数 CS010 IPN IP 型号 G 原边额定输入电流 原边电流测量范围 ±20 10 0±40 G 20 0±60 G 30 00±80 A G 40 A CS020CS030CS040 17 内蒙古科技大学毕业设计说明说 VSN VC IC Vd 副边额定输出电压 电源电压 电流消耗 绝缘电压 /50Hz/1分钟 %FL V0 线性度 零点失调电压 磁失调电IPN0 <±20 mV mVIPN=0 TA=25+85 < ±1 3 DC20 25+85 度 贮存环境温TS 40+100 度 / s kHz 1 S TA=25 <±30 mV 1±1% ±12±15 VC=±15V < 20 在原边与副边电路之间2 .5KV有效值 V V mA VOM 压 失调电压温VOT Tr f TA 漂 响应时间 频带宽度 工作环境温RL 负载电阻 TA=25 10K 使用说明 1.传感器按结构图说明接线,当待测电流从传感器穿芯孔中穿入,即可从输出端测得与被测电流一一对应的电压值。 2.根据用户需求定制不同额定输入电流和输出电压的传感器。 3.传感器的输出幅度可根据用户需要进行适当调整。 18 内蒙古科技大学