本科生毕业论文(设计)系(院)物理与电子工程学院专业电子信息工程论文题目用单片机控制直流电机
学生姓名
指导教师(教授)
班级2007级电信1班
学号07331012
完成日期:2010年11月
单片机控制直流电机设计
物理与电子工程学院电子信息工程07331012
[摘要] 本设计以STC89C52单片机为控制核心,运用L298N作为电机驱动芯片,根
据PWM控制原理对直流电机进行控制,采用光电对射编码器进行速度检测。具有控
制灵活、驱动力强、电机转速检测准备等优点。
[关键词] 直流电机STC89C52单片机L298 速度控制
1 绪论
1.1 引言
当今,自动化控制系统已经在各行各业得到了广泛的应用和发展,而直流调速控制作为电气传动的主流在现代化生产中起着主要作用,无论是在工农业生产、交通运输、国防、航天航空、医疗卫生、商务与办公设备、还是在日常生活中的家用电器都大量使用着各式各样的电气传动系统,其中许多系统有调速的要求:如车辆、电梯、机床、造纸机械等等。为了满足运行、生产、工艺的要求往往需要对另一类设备如风机、水泵等进行控制:为了减少运行损耗,节约电能也需要对电机进行调速。电机调速系统由控制部分、功率部分和电动机三大要素组成一个有机整体。各部分之间的不同组合,可构成多种多样的电机调速系统。
三十多年来,直流电机传动经历了重大的变革。首先实现了整流器的更新换代,以晶闸管整流装置取代了习用已久的直流发电机电动机组及水银整流装置使直流电气传动完成了一次大的跃进。同时,控制电路已经实现高集成化、小型化、高可靠性及低成本。同时,控制电路已经实现高集成化、小型化、高可靠性及低成本。以上技术的应用,使直流调速系统的性能指标大幅提高,应用范围不断扩大。直流调速技术不断发展,走向成熟化、完善化、系列化、标准化,在可逆脉宽调速、高精度的电气传动领域中仍然难以替代。
随着微控制器尤其是脉宽调制PWM 专门控制芯片的飞速发展, 其对电机控制方面的应用起了很重要的作用, 为设计性能更高的直流控制系统提供了基础。本文对基于PIC单片机的直流电机PWM 调速系统进行了较深入的研究,从直流调
速系统原理出发,逐步建立了单闭环直流PWM调速系统的数学模型。用微机硬件和软件发展的最新成果,探讨一个将微机和电力拖动控制相结合的新的控制方法,研究工作在对控制对象全面回顾的基础上,重点对控制部分展开研究,它包括对实现控制所需要的硬件和软件的探讨。在硬件方面充分利用微机外设接口丰富,运算速度快的特点,采取软件和硬件相结合的措施,实现对转速闭环调速系统的控制。在微机控制方面,讨论了显示、PWM、光电编码盘测速的原理,并给出了软、硬件实现方案。该方案以驱动芯片与一些外围电路。通过实时测试,调节电动机的转速,此调速系统可获得快速、精确的调速效果。
1.2 直流电机调速系统的发展
直流电气传动系统中需要有专门的可控直流电源,常用的可控直流电源有以下几种:第一,最初的直流调速系统是采用恒定的直流电压向直流电动机电枢供电,通过改变电枢回路中的电阻来实现调速。这种方法简单易行,设备制造方便,价格低廉。但缺点是效率低、不能在较宽范围内平滑调速,所以目前极少采用。第二,三十年代末,出现了发电机—电动机(也称为旋转变流组),配合采用磁放大器、电机扩大机、闸流管等控制器件,可获得优良的调速性能,如有较宽的调速范围(十比一至数十比一)、较小的转速变化率和调速平滑等。特别是当电动机减速时,可以通过发电机非常容易地将电动机轴上的飞轮惯量反馈给电网,这样,一方面可得到平滑的制动特性,另一方面又可减少能量的损耗,提高效率。但发电机—电动机调速系统的主要缺点是需要增加两台与调速电动机相当的旋转电机和一些辅助励磁设备,因而体积设备较多、体积大、费用高、效率低、安装需要地基、运行有噪声、维修困难等。第三,自出现汞弧变流器后,利用汞弧变流器代替上述发电机—电动机系统,使调速性能指标又进一步提高。特别是它的系统快速响应性是发电机—电动机系统不能比拟的。但是汞弧变流器仍存在一些缺点:维修还是不太方便,特别是水银蒸汽对维护人员会造成一定的危害等。第四,1957年,世界上出现了第一只晶闸管,与其它变流元件相比,晶闸管具有许多独特的优越性,因而晶闸管直流调速系统立即显示出强大的生命力。由于它具有体积小、响应快、工作可靠、寿命长、维修简便等一系列优点,采用晶闸管供电,不仅使直流调速系统经济指标上和可靠性有所提高,而且在技术性能上也显示出很大的优越性。晶闸管变流装置的放大倍数在10000以上,比机组(放大倍数10)高1000倍,比汞弧变流器(1000)高10倍;在快速响应性上,机组是秒级,而晶闸管变流装置为毫秒级。因此,目前在直流调速系统
中,除某些特大容量的设备而且供电电路容量较小的情况下,仍有采用机组供电、
晶闸管励磁系统以外,几乎绝大部分都已改用晶闸管相控整流供电了。
随着微电子技术的发展,微机功能的不断提高以及电力电子、计算机控制技术
的发展,电气传动领域出现了以微机为核心的数字控制系统。计算机的发展可以使
复杂的控制规律较方便的实现,以计算机为核心的数字控制技术成为自控领域的主
流,也给直流电气传动的发展注入了新的活力,使电气传动进入了更新的发展阶段。
1.3 直流电机基本调速方法
直流电动机分为有换向器和无换向器两大类。直流电动机调速系统最早采用恒
定直流电压给直流电动机供电,通过改变电枢回路中的电阻来实现调速。这种方法
简单易行,设备制造方便,价格低廉;但缺点是效率低,机械特性软,不能得到较
宽和平滑的调速性能。该法只适用在一些小功率且调速范围要求不大的场合。30年
代末期,发电机-电动机系统的出现才使调速性能优异的直流电动机得到广泛应用。
这种控制方法可获得较宽的范围,较小的转速变化率和调速性能。但此方法的主要
缺点是系统重量大,占地多,效率低及维修困难。近年来,随着电力电子的迅速发
展,有晶闸管变流器供电的直流电动机调速系统以取代了发电机-电动机调速系统,
它的调速性能远远超过了发电机-电动机调速系统。特别是大规模集成电路技术以及
计算机的飞速发展,使直流电动机调速系统的精度,动态性能,可靠性有了更大的
提高。电力电子技术中的IGBT 等大功率器件的发展取代晶闸管,出现了性能更好
的直流调速系统。
直流电动机的转速n 和其他参量的关系可表示为
a a a
E
U -I R C n =? (1)
式a U ---电枢供电电压(V )
a I -----电枢电流(A )
φ---励磁磁通(Wb )
R ---电枢回路总电阻(Ω)
E C ----电势系数,pN
C 60E a =,p 为电磁对数,a 为电枢并联支路数,N 为导体数。
由式1可以看出,式中a U a R φ三个参量都可以成为变量,只要改变其中一
个参量,就可以改变电动机转速,所以直流电动机有三种调速方法:
(1)改变电枢回路总电阻
R
a
(2)改变电枢供电电压
U
a
(3)改变励磁磁通 。
(4)采用大功率半导体器件的直流电动机脉宽调速方法
本设计采用大功率半导体器件的直流电动机脉宽调速方法
其方法就是相当于直流电电压降低,功率及转速降低。脉宽调制(PWM)是调整脉冲的宽度而不是频率。“脉冲宽了”指的是高电平时间长了,低电平时间短了,是通过改变电机电枢电压接通时间和通电周期的比值(即占空比)来控制电机速度,这种方法称为脉冲宽度调制(Pulse Width Modulation)简称PWM。即供电电压是宽度可调的脉冲电压,当脉冲最宽时,相当于直流电,功率最大,转速最高。脉冲宽度减脉冲频率并没有变。脉宽调制并不是直接调整电机的速度,而是改变电机的功率或扭矩。扭矩大了,换向加快,转速就提高了。
调速原理如图1所示。通过控制脉冲占空比来改变电机的电枢电压。改变占空比的方法有3种:
(1)定宽调频法,保持t1不变,只改变t2 ,这样周期(即频率)也改变;
(2)调宽调频法,保持t2不变,而改变t1,这样也使周期(即频率)改变;
(3)定频调宽法,这种方法是使周期(即频率)不变,而同时改变t1和t2。
由于前二种方法是改变周期(或频率),当控制频率与系统的固有频率接近时,将会引起振荡,用的比较少,因此本系统用的是定频调宽法。在脉冲作用下,当电机通电时,速度增加。电机断电时,转速逐渐减小。只有按一定规律,改变通电时间,即可实现对转速的控制。如图1-1。
图1-1
1.4 PWM调速方案的优越性
自从全控型电力电子器件问世以后,就出现了采用脉冲宽度调制的高频开关控制方式,形成了脉宽调制变换器—直流电机调速系统,PWM的H型属于调压调速,PWM的H桥能实现大功率调速;国内的超大功率调速还要依靠可控硅实现可控整流来实现直流电机的调压调速。本设计采用直流极式控制的桥式PWM变换器。与V-M系统相比在很多方面有较大的优越性:
1)主电路线路简单,需用的功率器件少。
2)开关频率高,电流容易连续,谐波少,电极损耗及发热都较小。
3)低速性能好,稳态精度高,调速范围宽,可达1:20000左右。
4)若是与快速响应的电机配合,则系统频带宽,动态响应快,动态抗干扰能力强。
5)功率开关器件工作在开关状态,通道损耗小,当开关频率适中时,开关损耗也不大,因而装置效率高。
6)直流电机采用不控整流时,电网功率因素比相控整流器高。
由于由以上优点直流PWM系统应用日益广泛,特别在中、小容量的高动态性能中。已完全取代了V--M系统。为达到更好的机械特性要求,一般直流电动机都是在闭环控制下运行。经常采用的闭环系统有转速负反馈和电流截至负反馈。
2 系统方案设计
2.1 系统总体方案
根据1.3节系统功能要求和技术指标,系统总体方案设计如图2-1所示。
图2-1直流电机多速控制器系统结构图
系统以STC89C52单片机为控制核心,通过键盘设置各段运行参数,也可通过
电脑
设置下载到单片机。单片机输出二进制控制量,经D/A转换电路将对应模拟电压
送到直流伺服放大器的设定值输入端。放大器根据输入的模拟电压而输出对应的电压来控制直流电机的转速。直流电机同轴的光电编码器E输出A、B两路方波信号送到整形电路,通过整形电路送到单片机用于测量转速。不断比较设定值和实际值,根据比较获得的误差调节放大器的输出电压。显示部分显示各段设定的时间值、转速值和测量的转速值;单片机主要完成参数设置、转速测量、参数显示和控制输出等功能。
2.3 系统器件选型
2.3.1光电数字编码器选型
光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。这是目前应用最多的传感器,光电编码器是由光栅盘和光电检测装置组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。由于光电码盘与电动机同轴,电动机旋转时,光栅盘与电动机同速旋转,经发光二极管等电子元件组成的检测装置检测输出若干脉冲信号,其原理示意图如图所示;通过计算每秒光电编码器输出脉冲的个数就能反映当前电动机的转速。如图2-2。
图2-2光电编码器原理
2.3.2 L298N驱动芯片
L298N,内部包含4通道逻辑驱动电路,可以方便的驱动两个直流电机,或一个两相步进电机,也可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。
L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7 V电压。4脚VS 接电源电压,VS电压范围VIH为+2.5~46 V。输出电流可达2.5 A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本设计我们将OUT1和OUT2,OUT3和OUT3,分别并联以增大驱动能力。
2.3.3 电平转换芯片
MAX232是一种双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。每个接收器将EIA/TIA-232-E电平输入转换为5V TTL/CMOS电平。这些接收器具有1.3V的典型门限值及0.5V的典型迟滞,而且可以接收±30V的输入。每个驱动器将TTL/CMOS输入电平转换EIA/TIA-232-E 电平。
3 硬件电路设计
3.1 引言
本系统在设计硬件电路时主要从以下原则出发:
(l)硬件电路设计与软件设计相结合优化硬件电路。一些由硬件实现的功能可用软件来实现,反过来一些由软件实现的功能也可用硬件来完成。用软件来实现硬件的功能时,其响应时间比用硬件实现长,还要占用CPU时间。但是用软件实现硬件的功能可以简化硬件结构,提高硬件电路的可靠性,还可降低成本。因此在本系统的设计过程中,在满足可行性和实时性的前提下尽可能地将硬件功能用软件来实现。
(2)可靠性及抗干扰设计。根据可靠性设计理论,系统所用芯片数量越少,系统的平均无故障时间越长,而且所用芯片数量越少,地址、数据总线在电路板上受干扰的可能性就越少,因此单片机基本系统的设计思想是在满足功能的情况下力争使用较少数量的芯片。
(3)灵活的功能扩展。一次设计往往不能完全考虑到系统的各个方面,系统需要不断完善,需要进行功能升级。功能扩展时系统应该在原有设计不需要很大改变的情况下,修改软件和少量硬件甚至不修改硬件就能完成。功能扩展是否灵活是衡量一个系统优劣的重要指标。根据系统要求及上面几个硬件设计原则,系统以单片
机为中央处理单元,由按键输入电路,LCD显示,L298N驱动电路等组成。下面对主要的电路设计做详细介绍。系统中体电路原理图如图3-1。
图3-1 系统总体电路原理图
3.2 PWM控制的H桥电路
直流电机驱动中使用最广泛的H型全桥驱动电路,如图3-2。
图3-2 H型全桥驱动电路
3.2.1 H桥工作原理
当开关1Q 与4Q 闭合时,负载电流从电源由A 流向B 。此时负载端A 点相对于B 点是正电位,电机两端承受正向电压。开关1Q 与4Q 由控制逻辑来同步工作,在开关1Q 与4Q 闭合期间,控制逻辑使另一对开关2Q 与3Q 处于断开状态。反之,当开关2Q 与3Q 闭合时,开关1Q 与4Q 断开,此时,负载电流从电源U 由B 流向A ,负载端B 点相对于A 点是正电位,电机两端承受反向电压。通过调节PWM 信号的占空比就可以改变电机电枢两端的平均电压,从而控制电机的转速或方向。当PWM 信号占空比10050>α时,电枢两端电压平均值为正,电机正向转动;当10050<α时,电枢两端电压平均值为负,电机平均值为负,电机反转;10050=α时,电机电枢电压平均值为0,电机停转,但此时电枢两端电压的顺时值并不为0,而是幅值接近电流电源电压U 的方波。
与功率开关并联的二极管为快会恢复二极管,作为续流二极管使用。当1Q 、4Q 的PWM 信号变为低电平后,功率管1Q 、4Q 关断而2Q 、3Q 饱和导通。电枢两端所加电压为-U ,此时,电枢电流方向不能立刻改变,必须通过二极管2VD 与3VD 续流。同理,当2Q 、3Q 的PWM 信号变为低电平后,电机通过二极管1VD 、4VD 续流。
3.3 L298N 驱动电路
L298N 外围电路如图所示。当单片机P2.0口输出为高电平,P2.1口输出为低电平时,OUT1和OUT2就输出高电平,OUT3和OUT4输出低电平,电动机正转;当单片机P2.0口输出为低电平,P2.1口输出为高电平时,OUT1和OUT2就输出低电平,OUT3和OUT4输出高电平,电动机反转。图3-3。
图3-3 L298N驱动电路图
3.4按键输入电路
本系统采用键盘输入控制,运用了中断扫描方式,其连接电路如图3-4所示。
图3-4 按键电路
3.5电源电路
控制系统需要一个稳定的工作电压才能可靠工作,本系统的单片机、液晶驱动、显示电源需要+5V;考虑到本系统的情况,采用了直接由USB供电来满足要求,如图3-5所示。
图3-5 电源电路
3.6复位和时钟电路
为了预防系统在突然情况下出现死机等问题,特设计复位电路进行对程序计数器的PC重新赋值并重新开始工作,根据STC89C52系列单片机的特点,采用典型的复位电路接法,不仅可以在上电时自动复位,还可以在程序运行中手动复位,手动复位只需要按下复位电路中的按键即可。如图3-6。
图3-6 复位和时钟电路
3.7显示电路
3.7.1 LCD介绍
液晶显示模块(LCM)由于其具有功耗低、无电磁辐射、寿命长、价格低、接口方便等一系列显著优点,被广泛应用与各种仪表仪器、测量显示装置、计算机显示终端等方面。其中,字符液晶显示模块是一类专用于显示字母、数字、符号的点阵式液晶显示模块。LCD1602字符液晶显示模块以ST7066和ST7065为控制器,其接口信号功能和操作指令与HD44780控制器具有兼容性。字符液晶有8?1、16?2、20?2、40?2等20多种规格型号齐全的字符液晶显示模块,均具有相同的引线功能和编程指令,与单片机的接口具有通用性。下图为外观机构。如图3-7。
图3-7 液晶
3.7.2 LCD1602引脚与功能
LCD1602的引脚与功能表下表所示。
引脚好引脚符号名称功能
1 GND 电源地接5V电源地端
2 V DD电源正端接5V电源正端
3 V EE液晶驱动电压端电压可调,一端接地,
一端接可调电阻
4 RS 寄存器选择段RS=1为数据寄存器,RS=0为指令寄存器
5 RW 读/写选择端RW=1为读数据,RW=0为写数据
6 EN 读/写使能端写时,下降沿触发;读时,高电平有效
7至14 DB0—DB7 8位数据线数据总线
3.7.3 LCD1602与STC89C52单片机接口
LCD1602模块与单片机的接口简单,STC89C52单片机的连接图如图所示。STC89C52的RD0-RD7端口直接与LCD1602的DB0-DB7相连接,LCD1602的控制信号RS、RW、EN分别与STC89C52的RE0-RD2相连接。如图3-8。
图3-8 液晶连接电路
3.8转速测量电路设计
一个完善的闭环系统,其定位精度和测量精度主要由测量元件决定,因此,高精度的测量转速对测量元件的质量要求相当高。光电编码器是现代系统中必不可少的一种数字式速度测量元件,被广泛应用于微处理器控制的闭环控制系统中。其电路图如图3-9。
图3-9 测速电路
3.8.1光栅盘
光栅盘是在圆盘边刻有很多光栅。当光源照射到光栅部分时,没有被光栅挡住的光源就透射过去。本系统中采用了一个圆面上刻有60个均匀光栅格的光栅盘。当电机旋转一周时,会产生60个光脉冲信号。
3.8.2 光电传感器
光电传感器原理是有一个发光二极管和一个由光信号控制放大的三极管组成。由发光二极管发出红外光线通过3mm 宽的气隙透射到另一端的三极管上,使得该三极管导通。其特征如下:
● 气隙是3mm 。
● 分辨率达到0.5mm 。
● 大电流传输比10030I I F
C >。
● 暗电流为:0.25A μ
● 在F I =10mA 时,发光二极管产生的光线的波长为940nm 。
安装时将光栅盘圆面钳到沟槽中,光电传感器的发光二极管发出的红外线通过3mm 气隙照射到光栅盘,光通过光栅盘面上透光的光栅气隙可以使得光传感器的三极管导通,从C 极会输出一个低电平,被光栅挡住的光不能透过去,使得光电传感器的C 极会输出一个高电平。如图3-10。
图3-10 光电测速传感器原理图
光电传感器在硬件电路设计上很简单, 如图3-10光电传感器的1引脚上接一
个限流电阻R ,限制流过发光二极管的电流F I =10mA 左右。计算公式如下:
R /V -V I F CC F )(=
其中,左右。,计算出,,Ω====390R mA 10I V 5V V 15.1V F CC F 如图3-11。
图3-11 光电传感器设计图
3.9 PCB 电路制作
本章讨论了系统硬件电路设计的原则;依据系统方案设计了各功能模块电路;说明各模块电路的连接方法;着重分析了L298N 驱动电路、复位、LCD 电路、转速测量电路的原理。
4系统软件设计
4.1引言
随着现代技术的发展,利用软件代替和简化硬件,利用基本的硬件电路和软件技术达到系统多功能集成和容易修改的要求。一个较为简单的硬件电路,系统功能的主要实现
是依靠软件的设计来完成的。本系统的软件采用模块化设计,将系统分为若干个模块,分别实现各项功能,这样在系统软件的调试过程中,各个模块的独立调试有助于问题的发现和解决,在一定程度上节约了程序的调试时间。
4.2系统应用程序设计
由于汇编语言程序的可读性和可移植性都较差,采用汇编语言编写单片机应用程序不但周期长,而且调试和排错也比较困难。为了提高编制单片机应用程序的效率,改善程序的可读性可移植性,采用高级语言无疑是一种更好的选择。C语言是一种通用的计算机程序设计语言,既具有一般高级语言的特点,又能直接对计算机的硬件进行操作,表达和运算能力也较强,许多以往只能采用汇编语言来解决的问题现在都可以改用C语言解决。德国Keil Software公司多年来致力于单片机C语言编译器的研究。该公司开发的Keil C51是一种专为8051单片机设计的高效率C 语言编译器,符合ANSI标准,生成的程序代码运行速度极高,所需要的存储空间极小,完全可以与汇编语言相比美[4]。
所以本设计采用的是C语言编程,利用KEIL μvision2进行编译和仿真,使用STC专用下载板将HEX文件烧录到STC89C52单片机中。
4.3直流电机转速控制器的软件设计
直流电机转速控制器的软件设计和系统功能的开发和完善是一个循序渐进过程,本文所作的软件开发是基于直流电机多速控制器的基本功能要求设计的该系统软件有主程序、功能键处理程序、电机运行显示程序、按盘设置参数程序测速程序、延时子程序等。
该系统的整个软件设计全部采用模块化程序设计思想,由系统初始化模块、按键识别模块、LCD模块、中断服务程序四大模块组成。整个软件的主程序如图4-1。
图4-1主程序框图
4.3.1系统初始化模块
主程序的系统初始化模块主要包括对中断服务程序的初始化、T0定时/计数器的初始化、T1定时/计数器的初始化和系统相关变量的初始化过程。
4.3.2 电机控制模块
电机控制模块包括电机的方向控制、电机的速度控制以及电机的起停控制,他们分别由right、left和PWMData以及run_flag三个变量来控制单片机产生不同的PWM信号送到L298N 电机驱动器。当right=1,left=0时,表示正转;当right=0,left=1时表示电机反转。PWMData是PWM模块占空比的具体内容,由于PWM的周期是100,所以PWMData的变量变化是0—100之间。改变PWMData的值就可以改变电机的速度。
4.3.3 按键识别模块
主程序中要实现对电机启动、停止键识别、电机方向切换键识别和电机速度调节键识别。该模块中没有采用常规的按键识别过程。
4.3.3.1按键识别方法。
●判断是否有键按下。
●延时去除按键抖动。
●再判断是否真的按下。
●是真的按下,则执行按键处理程序。
●等待按键释放。
4.3.3.2 按键扫描方法
该按键扫描采用中断来控制,当有键按下时产生一个下降沿,从而触发中断,Z 在中断服务程序中调用相关的键盘扫描子程序就可以获取相关的按键信息。之所以采用中断来控制,是因为这样能提高单片机工作效率。具体控制如下程序:unsigned char keyscan()
{
unsigned char aa=200;
if(P1!=0xff)
{
while(aa--);
if(P1!=0xff)
{
switch(P1&0x1f)
{
case 0x1e:return(1);break;
case 0x1d:return(3);break;
case 0x1b:return(2);break;
case 0x17:return(4);break;
case 0x0f:return(5);break;
}
}
while(P1!=0xff);
}
else {return (0);}
}
4.3.4 电机启动、停止控制键功能处理
如果系统上电时电机处于停止状态即(run_flag=0),按下RUNSTOPKEY后,电机就会运行起来,电机的的运行与停止状态在这个按键的作用下进行就可以控制电机的启动与停止操作。此部分的按键功能处理程序框图如图4-2所示。
图4-2启动、停止键功能处理框图
4.3.5 电机正反转控制键功能处理
改变电机正反转实际上是改变驱动电机的两路PWM信号的输出,假如电机正转则right=1,left=0,OUT1和OUT2输出高电平,OUT3和OUT4输出低电平;电机反转则right=0,left=1,OUT1和OUT2输出低电平,OUT3和OUT4输出高电平。程序中设置right、left变量作为电机正反转控制变量。功能处理框图如图4-3所示。
图4-3 电机正反转按键处理框图
4.3.6 电机速度控制键功能处理
通过程序编程产生PWM信号的占空比就可以改变电机的运转速度,PWM信号产生100个脉冲,这样就可以通过调高电平脉冲数和低电平脉冲数来控制占空比,从而达到控制速度的目的。例如占空比要达到75%,就可以通过调节高电平保持为75个输出周期,低电平为25输出周期。
4.3.7 LCD显示模块
LCD显示驱动单独做成一个源程序文件和头文件,可以方便以后其他模块或其
他应用程序的调用。在LCD显示驱动模块中主要是LCD初始化函数LCD_Initize()、写LCD命令函数Write_LCD_Command()、写LCD数据函数Write_LCD_Data()和LCD 字符的显示函数LCD_Dispstr()。
4.3.7.1 LCD初始化函数
LCD模块在系统上点必须进行初始化,主要包括对接口数据的总线长度、显示行数、字体类型和光标的模式控制等。整个初始化过程如图4-4所示。
图4-4 LCD初始化框图
4.3.7.2 LCD字符串显示字符
LCD1602可以显示两行16列ASCII码,其对应的第一行的首行地址是80H;第二行的首地址是C0H,送字符串到LCD上显示,需要定位将字符串显示在第X行和第Y列上,显示的字符串不能超过该行的最大列。
4.3.8转速测量子程序
由光电编码器通过光电转换将输出轴上的机械几何位移量转换数字成脉,通过定时器T0定时,定时器T1来计数。然后将获得的数据送到单片机处理,最后由液晶显示出来。具体程序如下:
《单片机原理及应用》课程设计基于单片机的步进电机(直流电机)控制器设计 学院:物联网工程学院 班级:自动化 姓名: 学号: 同组成员: 日期:2016.6.20-2016.6.24
一、设计目的 通过具体小型测试系统设计,实践单片机系统设计及调试的全过程,以加深对单片机内部结构、功能和指令系统的理解,并进一步学习单片机开发系统的应用及一些外围芯片的接口和编程方法,初步掌握单片机系统的硬、软件设计技术及调试技巧。 二、设计要求 1)电机转速可以平稳控制 2)通过键盘和显示器可以设置电机的转速 3)显示电机的速度趋势 三、仪器设备 1)IBMPC机一台 2)https://www.wendangku.net/doc/ba17390788.html,单片机仿真器、编程器、试验仪三合一综合开发平台一台 四、硬件线路图及主要芯片说明 1、AT89C5单片机芯片说明 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
VCC:AT89C51 电源正极输入,接+5V 电压。 GND:电源接地端。 XTAL1:接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个放大器构成了片内振荡器。它采用外部振荡器时,些引脚应接地。 XTAL2:接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。 RST:AT89C51 的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提 升到高电位,并持续两个机器周期以上的时间,AT89C51 便能完成系统复位的各项工作, 使得内部特殊功能寄存器的内容均被设成已知状态。 ALE/PROG ALE:是英文"ADDRESS LATCH ENABLE"的缩写,表示允许地址锁存允许信号。当访问外部存储器时,ALE 信号负跳变来触发外部的8 位锁存器(如74LS373),将端口P0 的地址总线(A0-A7)锁存进入锁存器中。在非访问外部存储器期间,ALE 引脚的输出频率是系统工作频率的1/16,因此可以用来驱动其他外围芯片的时钟输入。当问外部存储器期间,将以1/12 振荡频率输出。 EA/VPP:该引脚为低电平时,则读取外部的程序代码(存于外部EPROM 中)来执行程序。因此 在8031 中,EA 引脚必须接低电位,因为其内部无程序存储器空间。如果是使用AT89C51 或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内部程序存器, 当程序指针PC 值超过片内程序存储器地址(如8051/8751/89C51 的PC 超过0FFFH)时,将自动转
我上周刚做的这个实验成功拉,给你参考一下吧这可是我当时辛辛苦苦编出来的啊,不过我用的是L298驱动的和ULN2003一样,你把它换成2003就行拉 #include
for(j=200;j>0;j--); temp=P3; temp=temp&0x0f; if(temp!=0x0f) { temp=P3; temp=temp&0x0f; switch(temp) { case 0x0e: key=1; break; case 0x0d: key=2; break; case 0x0b: key=3; break; case 0x07: key=4; break; } temp=P3;
temp=temp&0x0f; while(temp!=0x0f) { temp=P3; temp=temp&0x0f; } } } P3=0xff; P3_5=0; temp=P3; temp=temp&0x0f; if(temp!=0x0f) { for(i=50;i>0;i--) for(j=200;j>0;j--); temp=P3; temp=temp&0x0f; if(temp!=0x0f) { temp=P3; temp=temp&0x0f; switch(temp)
实用标准文案 目录 1 总体设计框 架 (3) 2 硬件电路设 计 (4) 2.1 芯片介 绍 (4) 2.2 驱动电 路 (9) 2.3 按键控制电 路 (10) 3 程序编写 ................................................. 10 3.1 工作原 理 (10) 21程序书写过程 3.2 ...................................................... 参考资 料 (16) 精彩文档. 实用标准文案 直流电机驱动 Abstract 摘要:本文主要内容是利用PIC18F452单片机来控制直流电机,通过L293NE来驱动电机,通过按键来使其正转,反转。Keywords 关键词:直流电机,PWM,L293NE 精彩文档. 实用标准文案
总体设计框架1硬件电路利用驱动芯片L293D来驱动直流电机,按键则是单独引出。如图1所示。软件则是C语言编程。 PI驱C直动1流8电电F路机452 图1硬件设计框精彩文档. 实用标准文案 2硬件电路设计 2.1 芯片介绍 首先,总体说明硬件电路设计,如图2 原理图,图3 PCB图以及图4板子的图所示。三个输入信号,如图分别为RD4,RD5,RD6连上光耦的2脚,然后通过光耦的4脚引入L293D的使能引脚(12EN)以及输入引脚(1A,2A),然后L293D的输出引脚(1Y,2Y)通过H-桥型控制电路与直流电机连接。 图2 直流电机控制部分原理图 精彩文档. 实用标准文案 PCB图图3直流电机控制部分 成品板图4 其中红线圈表示直流电机控制部分。下面详细介绍各个芯片。PIC18F452
目录 摘要............................................................................................................................................................... I I ABSTRACT ................................................................................................................................................. III 1系统论述 (5) 1.1设计思路 (5) 1.2基本原理 (5) 1.3总体设计框图 (5) 2直流电机单元电路设计与分析 (6) 2.1直流电机驱动模块 (6) 2.2直流电机的中断键盘控制模块 (11) 2.31602LCD液晶显示模块 (13) 3直流电机PWM控制系统的实现 (15) 3.1总电路图 (15) 3.2总电路功能介绍 (16) 3.3直流电机控制程序 (16) 4系统仿真 (23) 5结束语 (26) 参考文献资料 (27)
摘要 本文是对直流电机PWM调速器设计的研究,主要实现对电机的控制。本课程设计主要是实现PWM调速器的正转、反转、加速、减速、停止等操作。并实现电路的仿真。为实现系统的微机控制,在设计中,采用了AT89C51单片机作为整个控制系统的控制电路的核心部分,配以各种显示、驱动模块,实现对电动机转速参数的显示和测量;由命令输入模块、光电隔离模块及H型驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,不断给光电隔离电路发送PWM 波形,H型驱动电路完成电机正反转控制.在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。 关键词:AT89C51单片机;PWM调速;正反转控制;仿真。
滨江学院 专业综合设计 题目直流电机闭环调速系统控制 院系自动控制 专业自动化 组别第二组 组长周未政 指导教师周旺平 二0 一0 年十二月二十八日基于单片机的直流电机闭环调速控制系统
摘要:设计以AT89C51单片机控制模块为核心,由单片机控制、红外线光电检测装置、直流电机转速为被测量组成的控制系统。原理是利用红外线光电传感器接收直流电机转速所产生的红外信号转换成电信号传输给单片机,并调节转速的闭环调速控制系统。 1.AT80C51单片机介绍 1.1主电源引脚 V ss—(20脚):电路地电平 V cc—(40脚):正常运行和编程校检(8051/8751)时为+5V电源。 1.2外接晶振或外部振荡器引脚 XTAL1—(19脚):接外部晶振的一个引脚. 在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器. 当采用外部振荡器时,此引脚应该接地. XTAL2—(18脚):接外部晶振的另一个引脚. 在片内接至振荡器的反相放大器的输出和内部时钟发生器的输入端. 当采用外部振荡器时,则此引脚接外部振荡信号的输入。 1.3控制、选通或电源复用引脚 RST/V pd—(9引脚): RST即Reset(复位)信号输入端。 ALE/PROG—(30引脚): ALE,允许地址索存信号输出。 PSEN—(29脚):访问外部程序存储器选通信号,低电平有效。. V pp/EA—(31引脚): EA为访问内部或外部程序存储器选择信号。 1.4多功能I/O口引脚 P0口—(32-39脚):8位漏极开路双向并行I/O接口. P1口—(1-8脚): 8位准双向并行I/O接口. P2口—(21-28脚):8位准双向并行I/O接口. P3口—(10-17脚):具有内部上拉电路的8位准双向并行I/O端口。它还提供第二特殊功能,具体含义为: P3.0—(10脚)RXD:串行数据接收端。 P3.1—(10脚)TXD:串行数据发送端。 P3.2—(10脚)INT0:外部中断0请求端,低电平有效。 P3.3—(10脚)INT1:外部中断1请求端,低电平有效。. P3.4—(10脚)T0:定时器/计数器0外部事件计数输入端。.
南京XX大学 指导老师:张X 课程设计基于51单片机的步进电机控制 机械电子工程学院 测控技术与仪器 XXXXX Xxx 2012年1年4日
步进电机控制系统 [摘要]本课程设计的内容是利用51单片机,达到控制步进电机的启 动、停止、正转、反转、两档速度和状态显示的目的,使步进电机控制更加灵活。步进电机驱动芯片采用ULN2803,ULN2803具有大电流、高电压,外电路简单等优点。利用四位数码管增设电机状态显示功能,各项数据更直观。实测结果表明,该控制系统达到了设计的要求。 关键字:步进电机、数码管、51单片机、ULN2803 一步进电机与驱动电路 1.1 什么是步进电机 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时也可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 1.2 步进电机的种类 步进电机分永磁式(PM)、反应式(VR)、和混合式(HB)三种。永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家80年代已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为 0.72度。这种步进电机的应用最为广泛。 1.3 步进电机的特点 1.精度高一般的步进电机的精度为步进角的3-5%,且不累积。可在宽广的频率范围内通过改变脉冲频率来实现调速,快速起停、正反转控制及制动等,这是步进电动机最突出的优点 2.过载性好其转速不受负载大小的影响,不像普通电机,当负载加大时就会出现速度下降的情况,所以步进电机使用在对速度和位置都有严格要求的场合; 3.控制方便步进电机是以“步”为单位旋转的,数字特征比较明显,这样就给计算
基于单片机对直流电机的控制 第十五组 姓名:吴代露20131325010 张鹏飞20131325012 金静丽20131325014 周敏20131325015 胡会华20131325017 顾蓉20131325018 专业:2013级信息工程(系统工程方向) 指导老师:周旺平 2014.12.22
基于单片机对直流电机的控制 内容摘要 电动机作为最主要的动力源,在生产和生活中占有重要地位。电动机的调速控制过去多用模拟法,随着计算机的产生和发展以及新型电力电子功率器件的不断涌现,电动机的控制也发生了深刻的变化。 关键字:电动机飞思卡尔 PWM控制 一、引言 (一)直流电机的定义 直流电机(direct current machine):是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。 (二)直流电机的基本结构 由直流电动机和发电机工作原理示意图可以看到,直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。 (三)直流电机工作原理
直流电机里边固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。直流发电机的工作原理就是把电枢线圈中感应的交变电动势,靠换向器配合电刷的换向作用,使之从电刷端引出时变为直流电动势的原理。感应电动势的方向按右手定则确定(磁感线指向手心,大拇指指向导体运动方向,其他四指的指向就是导体中感应电动势的方向)。导体受力的方向用左手定则确定。这一对电磁力形成了作用于电枢一个力矩,这个力矩在旋转电机里称为电磁转矩,转矩的方向是逆时针方向,企图使电枢逆时针方向转动。如果此电磁转矩能够克服电枢上的阻转矩(例如由摩擦引起的阻转矩以及其它负载转矩),电枢就能按逆时针方向旋转起来。 (四)直流电机的分类 直流电动机按结构及工作原理可划分:无刷直流电动机和有刷直流电动机。(1)无刷直流电动机:无刷直流电动机是将普通直流电动机的定子与转子进行了互换。其转子为永久磁铁产生气隙磁通:定子为电枢,由多相绕组组成。在结构上,它与永磁同步电动机类似。无刷直流电动机定子的结构与普通的同步电动机或感应电动机相同.在铁芯中嵌入多相绕组(三相、四相、五相不等).绕组可接成星形或三角形,并分别与逆变器的各功率管相连,以便进行合理换相。由于电动机本体为永磁电机,所以习惯上把无刷直流电动机也叫做永磁无刷直流电动机。 (2)有刷直流电动机:又可分为永磁直流电动机和电磁直流电动机。 永磁直流电动机划分:稀土永磁直流电动机、铁氧体永磁直流电动机和铝镍钴永磁直流电动机。稀土永磁直流电动机:体积小且性能更好,但价格昂贵,主要用于航天、计算机、井下仪器等;铁氧体永磁直流电动机:由铁氧体材料制成的磁极体,廉价,且性能良好,广泛用于家用电器、汽车、玩具、电动工具等领域;铝镍钴永磁直流电动机:需要消耗大量的贵重金属、价格较高,但对高温的适应性好,用于环境温度较高或对电动机的温度稳定性要求较高的场合。 电磁直流电动机划分:串励直流电动机、并励直流电动机、他励直流电动机和复励直流电动机。 (1)串励直流电动机:电流串联,分流,励磁绕组是和电枢串联的,直流串励电
//程序说明:使用内部时//PWM0=P3^7PWM1=P3^5 PWM2=P2^0 PWM3=P2^4 #include
可以实现的功能是: 按下左转键则开始向左转动 按下右转键则向右转动 按下停止键则开始逐渐停止转动 按下调速键一次则会加速一档 按下调速键二次则会加速二档 按下调速键三次则会加速三档 按下调速键四次则会加速四档 按下调速键五次则会回到最初速度重新记档位 设计思路: 直流电机只要能提供一定的直流就可以转动,改变电压极性可以改变转动方向,可以通过给直流电机提供脉冲信号来驱动它,脉冲信号的占空比可以影响到直流电机的平均速度,因此可以通过调整占空比从而能实现调速的目的。直流电机的驱动电路要有过流保护作用,图中的二极管就直到这个作用,另外电机的驱动电流是比较大的所以需要用三极管来放大电流。程序的关键就是如何实现占空比的调整,这个可以通过对51单片机定时器重装初值进行改变,从而改变时间。用51实现PWM信号的输出,相对麻烦点,要是AVR就可以方便地实现PWM信号,由见51单片机的局限性与AVR单片机的优势。 原理图
详细程序: #include
单片机原理及系统课程设计 1 引言 步进电机又称为脉冲电动机或阶跃电动机,它是基于最基本的电磁感应作用,将电脉冲信号转变为角位移或线位移的开环控制元件。单片机控制的步进电机广泛地应用于工业自动控制、数控机床、组合机床、机器人、计算机外围设备、照相机,大型望远镜,卫星天线定位系统等等。 随着经济的发展,技术的进步和电子技术的发展,步进电机的应用领域更加广阔,同时也对步进电机的运行性能提出了更高的要求。 步进电机的原始模型起源于1830年至1860年,1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中,这被认为最早的步进电机。 1950年后期晶体管的发明也逐渐应用在步进电机上,对于数字化的控制变得更为容易。到20世纪60年代后期,在步进电机本体方面随着永磁材料的发展,各种实用性步进电机应运而生。步进电机往后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。 在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。
2 设计方案与原理 4.1 设计方案 设计一个51单片机四相步进电机控制系统要求系统具有如下功能: (1)由I/O口产生的时序方波作为电机控制信号; (2)信号经过驱动芯片驱动电机的运转; (3)电机的状态通过键盘控制,包括正转,反转,加速,减速,停止和单步运行。 4.2 设计原理 步进电机实际上是一个数字\角度转换器,也是一个串行的数\模转换器。步进电机的基本控制包括启停控制、转向控制、速度控制、换向控制4个方面。从结构上看,步进电机分为三相、四相、五相等类型,本次设计的是四相电机。四相步进电机的工作方式有单四拍、双四拍和单双八拍三种。 在本次设计中,我们使用的是四相单八拍的工作方式。通过P1口给A,B,C,D四相依次输出高电平即可实现步进电机的旋转,通过控制两次输出的间隔,即可实现对步进电机的速度控制。 图 2.1 步进电机内部结构截图 根据步进电机的相关相序表我们可以正常的控制电机的步进运行。