直流电机PWM调速
电位器控制小型直流电机的pwm调速

随着时代的发展,数字电子技术已经普及到我们生活、工作、科研各个领域。
并且在各类机电系统中,由于直流电机具有良好的启动、制动和调速性能,直流电机调速系统已广泛应用于工业、航天领域的各个方面,最常用的直流技术是脉宽调制(PWM)直流调速技术,具有调速精度高,响应速度快,调速范围宽和损耗低的特点。
本设计主要介绍了使用微控制器AT89S51的直流电机调速系统。
论文主要介绍了直流电机调速系统的意义、基于单片机控制的PWM直流电机调速方法和PWM基本工作原理以及实现方法,通过对占空比的计算达到精确调速的目的。
主电路主要采用电位器的调节,经过ADC0809转换成数字信号进而控制AT89S51单片机,将数据传输给单片机并产生脉宽调制信号,然后通过电机驱动芯片L298对小型直流电机进行控制。
本设计还附加了由霍尔开关CS3020、AT89S51单片机、74LS47七段数码管译码芯片和四位LED构成转速检测显示电路。
关键词:单片机AT89S51;直流电机;脉宽调制;转速检测第一章绪论 (1)1.1 课题研究的背景 (1)1.2 课题研究的目的与意义 (1)1.3 PWM变频调速发展前景与简介 (2)1.4 课题研究内容及目标 (2)第二章直流电机调速系统设计 (4)2.1 系统总体方案设计 (4)2.1.1 设计思路 (4)2.1.2总体方案比较与选择 (4)2.1.3 电机调速控制模块方案比较与选择 (5)2.2 基本原理分析 (5)2.2.1 直流电机的调速原理 (5)2.2.2 直流电机PWM调速原理 (6)2.2.3 霍尔效应和原理简介 (7)2.3 系统各模块方案的比较与选择 (7)2.3.1 电机驱动芯片的选择 (7)2.3.2 测速传感器的选择 (8)2.4 系统硬件组成 (9)第三章硬件系统设计 (10)3.1 AT89S51单片机特性及管脚说明 (10)3.2 ADC0809特性及管脚说明 (11)3.3 PWM波形发生原理 (12)3.4 电机驱动电路 (13)3.5 测速部分 (15)3.6 复位电路和时钟电路 (16)总结 (19)参考文献 (20)第一章绪论1.1 课题研究的背景直流电机是最常见的一种电机,它已经广泛应用于交通、机械、化工、航空等领域中。
直流电机-PWM调速

PWM调速
脉冲宽度调制 - Pulse Width Modulation
• 利用微处理器的数字输出来对模拟电路进行控制的 一种非常有效的技术 • 应用:测量、通信、功率控制与变换
PWM
V T T/2
0
t
PWM
PWM变换器和PWM-M系统开环机械特性 脉宽调制原理
脉冲宽度调制(PWM)是通过功率管的开关作用,将恒定 直流电压转换成频率一定,宽度可调的方波脉冲电压,通过 调节脉冲电压的宽度而改变输出电压平均值的一种功率变换 技术。由脉宽调制器向电机供电的系统称为脉宽调速系统, 简称PWM-M调速系统。
(二)可逆PWM变换器 其主电路结构有H型,T型等,常用H型变换器,它由4个 电力晶体管和 4个续流二极管组成桥式电路。在控制方式上 分双极式、单极式和受限单极式三种。着重分析双极式H型 PWM变换器,然后再简要说明其它方式的特点。 1、双极式可逆PWM变换器
+
Us
(1)构成特点 4个VT的基极驱动分两组。 VTl 和 VT4 同时导通和关断,
n0
U s
Ce
调速系统的空载转速,与占空比成正比;
n
Id R 负载电流造成的转速降。 Ce
9
2、有制动作用的PWM变换器 (1)电路组成 需制动时须有反向电流-id的通路,应设置控制反向的第 二个电力晶体管,形成VT1和VT2交替开关的电路,如图(a) 所示。电路由VT1和VT2,VD1和VD2组成。VT1是主管,起 控制作用;VT2是辅助管,构成电机的制动电路。
8
Ud
ton U s U s T
图3-2(b)中绘出了电枢的脉冲端电压ud、平均电压Ud和 电枢电流id的波形。id 是脉动的。因开关频率较高,电流脉 动幅值不会很大,影响到转速n和反电动势E的波动就更小了。
直流电动机的PWM调压调速原理

直流电动机的PWM调压调速原理
直流电动机的PWM调压调速是指通过调节脉宽调制(PWM)信号的占空比,控制直流电动机的电压和转速。
其原理是利用数字信号的高低电平与时间的对应关系,通过高电平和低电平的时间比例来控制脉冲信号的平均值,从而实现对电动机的调压和调速。
具体来说,PWM调压调速主要包括以下几个步骤:
1.信号发生器:使用微控制器或其他信号发生器产生一个固定频率的方波信号,通常频率为几千赫兹到几十千赫兹。
这个信号称为PWM基准信号。
2.调制器:通过控制占空比,将PWM基准信号转换为调制后的PWM信号。
占空比是指高电平持续的时间与一个周期的比值。
例如,占空比为50%的PWM信号表示高电平和低电平持续时间相等。
调制器可以是硬件电路或者软件控制的。
3.电压调节:将调制后的PWM信号经过滤波器平滑输出,形成电压调节信号。
滤波器通常使用低通滤波器,将PWM信号的高频成分滤除,得到平均电压。
4.转速控制:通过调节占空比,改变PWM信号的高电平时间,从而改变直流电动机的平均电压。
占空比越大,输出电压就越高;占空比越小,输出电压就越低。
5.转速反馈:为了实现闭环控制,通常需要通过传感器获取直流电动机的转速,并将转速信息反馈给调速控制器。
调速控制器会根据反馈信号与设定的转速进行比较,调节占空比控制电动机的转速。
总结起来,PWM调压调速原理就是通过调节PWM信号的占空比控制直流电动机的电压和转速。
通过改变占空比,可以改变PWM信号的高电平时间,从而改变电动机的平均电压和转速。
同时,结合转速反馈,可以实现封闭环控制,使电动机的转速能够与设定值保持一致。
PWM控制直流电机调速

毕业设计论文PWM 控制直流机电调速脉宽调制(PWM)控制技术,是利用半导体开关器件的导通和关断,把直流电压变成电压脉冲序列,并控制电压脉冲的宽度和脉冲序列的周期以达到变压变频目的的一种控制技术。
PWM 控制技术广泛地应用于开关稳压电源,不间断电源(UPS),以及交直流电动机传动等领。
本文阐述了 PWM 变频调速系统的基本原理和特点,并在此基础上给出了一种基于 Mitel SA866DE 三相 PWM 波形发生器和绝缘栅双极功率晶体管(IGBT)的变频调速设计方案。
直流电动机具有优良的调速特性,调速平滑、方便, 调速范围广;过载能力大,能承受频繁的冲击负载,可实现频繁的无级快速起动、制动和反转;能满足生产过程自动化系统各种不同的特殊运行要求,在许多需要调速或者快速正反向的电力拖动系统领域中得到了广泛的应用。
直流电动机的转速调节主要有三种方法:调节电枢供电的电压、减弱励磁磁通和改变电枢回路电阻。
针对三种调速方法,都有各自的特点,也存在一定的缺陷。
例如改变电枢回路电阻调速只能实现有级调速,减弱磁通虽然能够平滑调速,但这种方法的调速范围不大,普通都是配合变压调速使用。
所以,在直流调速系统中,都是以变压调速为主。
其中,在变压调速系统中,大体上又可分为可控整流式调速系统和直流PWM 调速系统两种。
直流 PWM 调速系统与可控整流式调速系统相比有下列优点:由于PWM 调速系统的开关频率较高 ,仅靠电枢电感的滤波作用就可获得平稳的直流电流 , 低速特性好,稳速精度高,调速范围宽,可达1:10000 摆布;同样,由于开关频率高, 快速响应特性好,动态抗干扰能力强,可以获得很宽的频带;开关器件只工作在开关状态,主电路损耗小,装置效率高;直流电源采用不控整流时,电网功率因数比相控整流器高。
正因为直流 PWM 调速系统有以上的优点,并且随着电力电子器件开关性能的不断提高,直流脉宽调制( PWM) 技术得到了飞速的发展。
直流电机调速的PWM实现方法

8
GND
地
9
VSS
逻辑控制地
10,12
Input 3 Input4
桥式电路B的控制端
13,14
Out3 Out4
桥式电路B的的输出端,接电机
-
NC
不接
将上面的PWM例程产生的波形作用于电机的使能端上,就可以实现电机的调速。至于方向的控制,只需两个IO接于控制端即可。
PWM控制的基本原理很早就已经提出,但是受电力电子器件发展水平的制约,在上世纪80年代以前一直未能实现。直到进入上世纪80年代,随着全控型电力电子器件的出现和迅速发展,PWM控制技术才真正得到应用。随着电力电子技术、微电子技术和自动控制技术的发展以及各种新的理论方法,如现代控制理论、非线性系统控制思想的应用,PWM控制技术获得了空前的发展。通俗的说PWM是采用数字量对模拟量进行合成的方法。
直流电机调速的PWM实现方法
PWM在控制中使用非常广泛,可以以数字量对模拟电路进行控制。这里对PWM的原理进行讲述,并举例说明PWM的重要应用。
1ቤተ መጻሕፍቲ ባይዱPWM简介
采样控制理论中有一个重要结论:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。PWM控制技术就是以该结论为理论基础,对半导体开关器件的导通和关断进行控制,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲来代替正弦波或其他所需要的波形。按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。
直流电机pwm调速的续流二极管

直流电机是工业生产中常见的电机之一,它通常以PWM(脉宽调制)方式进行调速。
而在PWM调速过程中,续流二极管扮演了重要角色。
本文将从直流电机的工作原理、PWM调速原理、续流二极管的作用和选择等方面进行详细介绍。
一、直流电机的工作原理直流电机是一种将电能转换为机械能的装置,它的工作原理基于洛伦兹力和带电粒子在磁场中受力的规律。
当直流电流通过电机的线圈时,产生的磁场与永磁体或者电磁铁产生的磁场相互作用,从而使得电机的转子产生力矩,从而驱动机械装置运转。
二、PWM调速原理PWM调速是通过改变电机输入的脉冲宽度来控制电机的平均电压和平均电流,从而改变电机的转速。
具体实现上,PWM调速是将直流电源高频开关,使得电机在分时段内接收到占空比不同的电压脉冲,从而实现调速。
三、续流二极管的作用在PWM调速过程中,电机的正负半周各有一个脉冲开关管,分别为一组导通和一组关断。
当开关管关断时,直流电机线圈中的电流不能突然中断,否则会产生电感压降。
为了避免电感压降引起的反冲电压,需要在开关管关断时,让电流有一条回路可以继续流动,这就是续流二极管的作用。
四、续流二极管的选择续流二极管应具有较快的反向恢复时间,这样才能在开关管关断瞬间尽快导通,避免电感压降引起的反冲电压。
续流二极管的电流和电压等参数也需要根据具体的电机工作条件来选择。
五、总结直流电机的PWM调速是一种常见的调速方式,而续流二极管在PWM调速过程中的作用不可忽视。
正确选择合适的续流二极管,对电机的稳定性和性能有着重要影响。
希望本文对读者对直流电机的PWM 调速和续流二极管有所帮助。
六、续流二极管的工作原理续流二极管在PWM调速过程中,起到了保护开关管和电机的作用。
在电机线圈中的电流无法突然中断的情况下,如果没有合适的续流二极管,就会导致电感压降产生反冲电压,这样会对开关管和电机造成不良影响,甚至损坏设备。
续流二极管的工作原理主要是利用其具有的快速反向恢复时间和导通特性来形成一个回路,让电流有一条通路继续流动,从而避免反冲电压的产生。
直流电机pwm调速原理

直流电机pwm调速原理直流电机PWM调速原理是通过改变电源给电机的电压和电流,从而控制电机转速的一种方法。
PWM,即脉冲宽度调制,是一种用来调节电平电路中电平的技术,利用脉冲信号的占空比(高电平与周期时间之比)来控制电平的平均值。
在直流电机PWM调速中,首先需要了解电机的电刷子与换向器的工作原理。
电刷子负责切换电极的极性,而换向器则根据电刷子的位置将电流传送到正确的电极上。
当电流在电机的绕组中流动时,会形成磁场,这个磁场会与永磁体产生相互作用,从而产生电机的转动力。
为了控制电机的转速,可以通过改变供电电压的幅值和频率来实现。
在PWM调速中,电源输出的电压信号被分解为一系列的脉冲信号。
脉冲信号的占空比根据所需的电机转速来确定,占空比越大,电机转速越快。
在每个脉冲周期中,脉冲信号的高电平部分代表电源给电机供电的时间,而低电平部分则代表停止供电的时间。
通过改变脉冲信号的占空比,可以控制电机的平均电压和平均电流。
当占空比增大时,电机平均得到更多的能量供应,转速也会相应增加。
反之,当占空比减小时,电机平均得到更少的能量供应,转速会减慢。
这样,通过不断调整脉冲信号的占空比,就可以实现对直流电机的精准调速。
需要注意的是,在PWM调速中,电机的换向也需要考虑进去。
换向器需要根据电机的转向来控制电刷子的位置,使电流能够按正确的路径流动。
这样能够保证电机的正常运转,并提供足够的转矩和稳定性。
综上所述,直流电机PWM调速是通过改变电源给电机的电压和电流的脉冲信号的占空比来实现的。
通过调节脉冲信号的占空比,可以控制电机的平均电压和电流,从而实现对电机转速的精确控制。
同时,需考虑电机的换向,以保证电机能够正常运转。
1-3 直流电动机的脉宽调制(PWM)调速

若VT1关断时间长,在t=t2时,电枢电流ia衰减 到零,那么在电动机内电势Ea的作用下,VT2导通, 电枢电流ia 将沿着相反的方向从B点流入A点,电机 进入能耗制动。通过控制VT2的时间间隔可以控制电 机的制动转矩 注意:在VT1重新导通之间,必须先关闭VT2, 让电枢电流经过VD1续流,电机短时进入再生制动状 态,否则在VT2还没有完全关断之前就让VT1导通, 电源经过VT2、VT1直接短路,损坏开关元件。
1、单极性脉宽调制方式 系统输出电压UA的极性是通过一个控制电压Uc 来改变的。 Uc为正,VT1与VT2交替导通,VT4一直导通, VT3关断,此时,B点总是为正,A点总是为负 Uc为负,VT3与VT4交替导通,VT2一直导通, VT1关断,此时,B点总是为负,A点总是为正
工作原理: Uc为正时 0<t<t1时,VT1导通,VT2关断,若Us>Ea, 电枢电流经VT1、VT4从B流到A,电机处在电动 机状态。 在t1<t<T时,VT1关闭,VD2与VT4续流,电枢 电流方向不变,电机仍处在电动机状态。 若在t1<t<T期间的某一时刻t2电枢电流衰减到 零,那么在t2<t<T期间,Ea使VT2导通,电枢电 流反向,经VT2、VD4从A流到B,电机进入能耗 制动状态 若Ea>Us,在VT2关断期间,电枢电流经VD1 和VD4输回电网,电机作再生制动 Uc为负时,原理与此类似,电机反向
如果电流连续,则电机始终处于电动状态 若在t1<t<T期间的某一时刻t2电枢电流衰减到 零,那么在t2<t<T期间,Us和Ea共同作用,使 VT2、VT3导通,电枢电流反向,经VT2、VT3从A 流到B,电机进入反接制动状态 在VT1、VT4再次导通之前,必须关断VT2、 VT3,电枢电流VD1、VD4续流,电机进入再生制 动
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
直流电机转速的PWM控制测速王鹏辉姬玉燕摘要本设计采用PWM的控制原理来完成对直流电机的正转、反转以及其加速、减速过程的控制,在此过程中是通过单片机的定时器加上中断的方式产生不同时长的高低电压脉冲信号来完成。
并通过霍尔传感器对直流电机的转速进行测定,最后将实时测定的转速数值1602液晶屏上。
关键词:PWM控制直流电机霍尔传感器 1602液晶显示屏 L298驱动一、设计目的:了解直流电机工作原理,掌握用单片机来控制直流电机系统的硬件设计方法,熟悉直流电机驱动程序的设计与调试,能够熟练应用PWM方法来控制直流电机的正反转和加减速,提高单片机应用系统设计和调试水平。
1.1系统方案提出和论证转速测量的方案选择,一般要考虑传感器的结构、安装以及测速范围与环境条件等方面的适用性;再就是二次仪表的要求,除了显示以外还有控制、通讯和远传方面的要求。
本说明书中给出两种转速测量方案,经过我和伙伴查资料、构思和自己的设计,总体电路我们有两套设计方案,部分重要模块也考虑了其它设计方法,经过分析,从实现难度、熟悉程度、器件用量等方面综合考虑,我们才最终选择了一个方案。
下面就看一下我们对两套设计方案的简要说明。
1.2 方案一:霍尔传感器测量方案霍尔传感器是利用霍尔效应进行工作的?其核心元件是根据霍尔效应原理制成的霍尔元件。
本文介绍一种泵驱动轴的转速采用霍尔转速传感器测量。
霍尔转速传感器的结构原理图如图3.1, 霍尔转速传感器的接线图如图3.2 。
传感器的定子上有2 个互相垂直的绕组A 和B, 在绕组的中心线上粘有霍尔片HA 和HB ,转子为永久磁钢,霍尔元件HA 和HB 的激励电机分别与绕组A 和B 相连,它们的霍尔电极串联后作为传感器的输出。
图3.1 霍尔转速传感器的结构原理图方案霍尔转速传感器的接线图缺点:采用霍尔传感器在信号采样的时候,会出现采样不精确,因为它是靠磁性感应才采集脉冲的,使用时间长了会出现磁性变小,影响脉冲的采样精度。
1.3方案二:光电传感器整个测量系统的组成框图如图3.2所示。
从图中可见,转子由一直流调速电机驱动,可实现大转速范围内的无级调速。
转速信号由光电传感器拾取,使用时应先在转子上做好光电标记,具体办法可以是:将转子表面擦干净后用黑漆(或黑色胶布) 全部涂黑,再将一块反光材料贴在其上作为光电标记,然后将光电传感器(光电头) 固定在正对光电标记的某一适当距离处。
光电头采用低功耗高亮度LED ,光源为高可靠性可见红光,无论黑夜还是白天,或是背景光强有大范围改变都不影响接收效果。
光电头包含有前置电路,输出0—5V的脉冲信号。
接到单片机89C51的相应管脚上,通过89C51内部定时/计时器T0、T1及相应的程序设计,组成一个数字式转速测量系统。
图3.2 测量系统的组成框图优点:这种方案使用光电转速传感器具有采样精确,采样速度快,范围广的特点。
综上所述,方案二使用霍尔传感器来作为本设计的最佳选择方案。
二、设计内容:直流电机的正反转控制,转速测定、调节及其显示。
三、工作原理3.1直流电机直流电机的结构由定子和转子两大部分组成。
直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,磁场由机座、主磁极、换向极、端盖、轴承和电刷装置等组成。
运行时转动的部分称为转子,其主要作用产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。
导体受力的方向用左手定则确定。
这一对电磁力形成了作用于电枢的一个力矩,这个力矩在旋转电机里称为电磁转矩,转矩的方向是逆时针方向,企图使电枢逆时针方向转动。
如果此电磁转矩能够克服电枢上的阻转矩(例如由摩擦引起的阻转矩以及其它负载转矩),电枢就能按逆时针方向旋转起来。
当电枢转了180°后,导体cd边转到N极下,导体ab边转到S极下时,由于直流电源供给的电流方向不变,仍从电刷A流入,经过导体cd、ab后,从电刷B流出。
这时导体cd边受力方向变为从右向左,导体ab边受力方向是从左向右,产生的电磁转矩的方向仍为逆时针方向。
因此,电枢一经转动,由于换向器配合电刷对电流的换向作用,直流电流交替地由导体ab和cd流入,使线圈边只要处于N极下,其中通过电流的方向总是由电刷A 流入的方向,而在S极下时,总是从电刷B流出的方向。
这就保证了每个极下线圈边中的电流始终是一个方向,从而形成一种方向不变的转矩,使电动机能连续地旋转。
这就是直流电动机的工作原理。
3.2直流电机驱动L298N可接受标准TTL逻辑电平信号VSS ,VSS可接4.5~7 V电压。
4脚VS接电源电压,V S 电压范围VIH为+2.5~46 V。
输出电流可达2.5 A,可驱动电感性负载。
1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。
L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动一台电动机。
5,7,10,12脚接输入控制电平,控制电机的正反转。
EnA ,EnB接控制使能端,控制电机的停转。
表1是L298N功能逻辑图。
In3,In4的逻辑图与表1相同。
由表1可知EnA为低电平时,输入电平对电机控制起作用,当EnA为高电平,输入电平为一高一低,电机正或反转。
同为低电平电机停止,同为高电平电机刹停。
二、系统总体框图与原理说明2.1 总体方案原理及设计框图本设计是基于AT89c51为核心的直流调速器,由单片机控制和产生适合要求的PWM信号,该PWM信号通过驱动芯片电路进行直流调速,使输出电压平均值和功率可以按照PWM信号的占空比而变化,从而达到对直流电机调速的目的。
拨码开关输入0~1范围的占空比,用LCD1602作为主液晶显示器,显示输入的占空比控制电机转速,能够实现较好的人机交互。
总体方案设计框图三、硬件电路图3.1 PWM 产生方式(1)PWM (脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。
PWM 可以应用在很多方面,比如:电机调速、温度控制、压力控制等等。
在PWM 驱动控制的调整系统中,按一个固定的频率来接通和断开的电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。
通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。
正因为如此,PWM 又被称为“开关驱动装置”。
PWM 波形如图所示:PWM 波形图设电机始终接通电路时,电机转速最大为V max ,设占空比为:Tt D 1则电机的平均转速为D VVa*max其中V a 指的是电机的平均速度,V max 是指电机在全通电时最大速度,D 指的是占空比。
由上面的公式可见,当改变占空比D 时,就可以得到不同电机平均速度V a ,从而达到调速的目的。
(2)单片机片内软件生成PWM 信号PWM 信号采用单片机定时中断的方式软件模拟产生,这样实现比较容易,可以节约硬件成本。
//===================定时器0初始化设置=================== //===================定时器0初始化设置=================== void Time0_Init() //定时器0初始化函数 { TMOD=0x01; //定时器0为工作方式1 TH0=(65536-50000)/256;TL0=(65536-50000)%256; //初始化为定时时间为50ms ET0=1; //开定时器0中断 TR0=1; //开定时器 EA=1; //开总开关}//==================定时器0中断服务程序=============== void timer0_server(void) interrupt 3 {if(PWM_flag) {TH0=(65536-PWM_data*200)/256; TL0=(65536-PWM_data*200)%256; PWM=1;PWM_flag=~PWM_flag;} else{TH1=(45536+PWM_data*200)/256;TL1=(45536+PWM_data*200)%256; //初始化为定时时间为20msPWM=0;PWM_flag=~PWM_flag;}3.2开关模块的设计本设计输入用8位的拨码开关,能产生256数值,每一种数值对应于一个占空比的值,当输入为256时,最大的占空比为99%,能调节到最大的电机转速。
3.3显示模块的设计本设计用LCD1602作为显示模块,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,可以显示两行,提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能。
3.4直流电机驱动模块本设计采用L298D,传输电信号。
它对输入、输出电信号有良好的隔离作用,然后,驱动直流电机的驱动和调速。
3.3模拟直流电机测速模块555定时器,构成简单的振荡电路,利用电阻和电容充放电原理,是输出端产生方波信号,即可模拟简单的脉冲,代替电机的测速,电机测速一般都是利用霍尔元件测出电机转了多少圈,电机转一圈,霍尔元件检测电机触发的脉冲,则会输出响应的信号。
光电隔离主要用来处理控制部分和强电部分的信号,减少控制部分受强电的干扰。
起隔离作用。
四、程序流程图五、仿真说明(1)初始界面时,拨码开关没有设置PWM,直流电机处于停止状态,LCD1602显示PWM为000%在LCD上显示Motor_Speed为256,这就是在一定时间内低电平的数目。
由于INT0是属于低电平输入中断类型的,根据这个原理再通过计数器T1来记录INT0的中断次数即是转速。
(2)通过调节开关的值,使占空比增大,从而使直流电机的转速变大。
六、心得体会本设计通过仿真基本能实现对直流电机的调速和测速。
课程设计重点在于对单片机的应用与理解,引入了L298D芯片的使用与了解其作用,对掌握驱动直流电机的方法有一定得要求,通过这几天网上的一些相关资料的查阅,顺利的完成了这个课程设计,但在仿真过程中的一些细节问题上还有着纰漏,在电机的测速的模块的编程不够完美。
通过本次课程设计,加深了之前的单片机知识和相应仿真软件的使用。
拓宽了本人的知识面,拓展了视野和思维。
设计一个直流电机调速系统,无论从学习还是实践的角度上来说,对电气专业的大学生都会产生积极的作用,有利于提高学习热情。
附录#include<reg52.h>#include<math.h>#include<string.h>#include<absacc.h>#include<lcd1602.h>//==========================#define uchar unsigned char#define uint unsigned int//==========================#define Data_Bus P1sbit PWM=P3^0;bit PWM_flag=0;unsigned char Time_flag=0;unsigned char DSW_data=0x00;unsigned char PWM_data=0;unsigned int Speed_data=0;unsigned char PWM_Precent[5]={0x30,0x30,'%'};unsigned char MotorSpeed[5]={0x30,0x30,0x30};//--------------------------//------- 函数声明 --------void delay(uint);void delay_ms(unsigned int ii);//1ms延时函数void get_PWM(void);void get_Speed(void);//====================延时子函数========================= void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void delay_ms(unsigned int ii)//1ms延时函数{unsigned int i,x;for (x=0;x<ii;x++){for (i=0;i<200;i++);}}//===================外部中断0初始化程序=============== void Init_int0(void){EX0=1;//开外部中断0IT0=1;//触发EA=1;}//==================外部中断0服务程序===================void Int0_server(void) interrupt 0{EA=0;Speed_data++;EA=1;}//===================定时器0初始化设置===================void Time0_Init() //定时器0初始化函数{TMOD=0x01; //定时器0为工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256; //初始化为定时时间为50msET0=1; //开定时器0中断TR0=1; //开定时器EA=1; //开总开关}//==================定时器0中断服务程序===============void Time0_Int() interrupt 1 //定时器0中断子函数{TH0=(65536-50000)/256;TL0=(65536-50000)%256; //初始化为定时时间为50msTime_flag++;if(Time_flag==20){Time_flag=0;get_Speed();}}//====================定时器1初始化设置===============计算方波数void init_timer1(void){TMOD|=0x10; //定时器1为工作方式1 16bitTH1=0xFF;TL1=0xFE;ET1=1; //开定时器1中断TR1=1; //开定时器EA=1; //开总开关}//==================定时器1中断服务程序=============== void timer1_server(void) interrupt 3{if(PWM_flag){TH1=(65536-PWM_data*200)/256;TL1=(65536-PWM_data*200)%256;PWM=1;PWM_flag=~PWM_flag;}else{TH1=(45536+PWM_data*200)/256;TL1=(45536+PWM_data*200)%256; //初始化为定时时间为20ms PWM=0;PWM_flag=~PWM_flag;}}//==================get_PWM============================void get_PWM(void){DSW_data=Data_Bus;if(DSW_data==0x00){TR1=0;PWM=0;PWM_Precent[0]=0x30;PWM_Precent[1]=0x30;}else{PWM_data=DSW_data*100/256;PWM_Precent[0]=PWM_data/10+0x30;PWM_Precent[1]=PWM_data%10+0x30;TR1=1;}}//==================get_Speed============================ void get_Speed(void){MotorSpeed[0]=Speed_data/100+0x30;MotorSpeed[1]=Speed_data/10%10+0x30;MotorSpeed[2]=Speed_data%10+0x30;Speed_data=0;}//------ 主函数 -----------void main(){PWM=0;get_PWM();Init_int0();Time0_Init();init_timer1();LCD_init(); //LCD1602初始化LCD_write_command(0x01);//LCD清屏delay_ms(10);DisplayChar(0,1,"PWM_Precent:");DisplayChar(13,1,PWM_Precent);DisplayChar(0,0,"Motor_Speed:");DisplayChar(13,0,MotorSpeed);while(1){get_PWM();DisplayChar(13,1,PWM_Precent);DisplayChar(13,0,MotorSpeed); }}。