基于单片机de 直流电机转速测量与控制doc.docx
- 文档编号:2967677
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:10
- 大小:251.81KB
基于单片机de 直流电机转速测量与控制doc.docx
《基于单片机de 直流电机转速测量与控制doc.docx》由会员分享,可在线阅读,更多相关《基于单片机de 直流电机转速测量与控制doc.docx(10页珍藏版)》请在冰豆网上搜索。
基于单片机de直流电机转速测量与控制doc
直流电机转速测量与PWM控制
摘要:
本课题是对直流电机PWM调速器设计的研究,主要实现对电动机的控制。
因此在设计中,对直流调速的原理,直流调速控制方式以及调速特性,PWM基本原理及实现方式进行了全面的阐述。
为实现系统的微机控制,在设计中,采用了AT89C51单片机作为整个控制系统的控制电路的核心部分,在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。
设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大的简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。
关键词:
直流电机,转速测量,PWM控制。
一.直流风扇电机转速测量与PWM控制的基本原理:
直流电机的工作原理为:
直流电机的磁极N,S间装着一个可以转动的铁磁圆柱体,圆柱体的表面固定着线圈abcd。
当线圈流过电流的时候,线圈受到电磁力的作用,产生旋转。
根据左手定则可知,当流过线圈中电流改变方向时,线圈的受力方向也将改变,因此通过改变线圈电流的方向实现改变电机的方向。
控制电路主要由单片机来控制,单片机发出的PWM脉冲来实现对驱动的控制。
二.设计方案:
程序应用模块化进行设计,主要有初始化模块、显示模块、读键模块、数制转换模块、双字节除法模块、中断模块和控制调节模块。
编程次序可按此先后进行。
初始化模块:
8155工作方式、T0和T1工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。
显示模块:
设定值和实测值的数值与字符动态显示。
读键模块:
从I/O口依据某位数码管亮时读入小按键是否有效,然后根据四个小键盘的不同功能进行相应的处理,只要设定值一改变立刻显示。
加1键和减1键要有连加连减功能。
数制转换模块:
将二进制转换为十进制。
外部中断模块:
将转1圈的时间通过双字节除法程序求出即时转速。
定时中断模块:
PWM输出波形形成。
控制调节模块:
通过设定值和实测值的比较来改变脉冲波的占空比,该数据的调节分为简单比例调节PP和比例积分调节PI。
调节公式分别为:
YK=YK1+KP*EK
YK=YK1+KP*EK+KI*EK2
YK:
要输出的数据
YK1:
上次输出的数据
EK:
设定值和实测值的差值
EK1:
上次的EK值
EK2:
EK-EK1的差值
KP:
比例系数(设KP=1~2)
KI:
积分系数(设KI=1~2)
三.硬件设计
对题目进行深入的分析和思考,可以将整个模块分为以下几个部分:
控制部分,隔离电路,驱动电路和负载的续流电路。
系统的框图如图3.1所示。
3.1控制电路的设计
控制电路主要由单片机来控制,编写一段程序使单片机发出的PWM脉冲来实现对驱动的控制。
新一代的单片机增加了很多的功能,其中包括PWM功能。
单片机通过初始化设置,使其能自动的发出PWM脉冲波,只有在改变占空比的时候CPU才干预。
3.2隔离电路的设计
隔离电路主要作用是防止驱动电路中的电流过大,与单片机直接相连是可能会烧毁单片机而加的保护性电路。
其电路图如下图3.2所示。
其中1,2,3,4脚分别接单片机的P1.1,P1.2,P1.3,P1.4口。
电阻起限流左右。
电阻R1,R3,R5,R7阻值为470Ω,电阻R2,R4,R6,R8的电阻都为1KΩ。
其工作原理如下:
当电机中的电压正常时,发光二极管导通,发光使光敏三极管导通,电路接通正常工作;当电路中电压很高时,发光二极管被击穿,电路不导通,从而起到保护单片机的作用。
3.3驱动电路的设计
开关驱动是利用大功率晶体管的开关作用。
将恒定的直流电源电压转换为一定的方波电压加在电机电枢上,与线性方式不同,在这种驱动方式下,驱动器的功率管工作在开关状态,当器件导通时,器件的电流很大但是压降很小;器件关断时,压降很大但是电流很小。
因此驱动器的功率消耗少,发热量少,效率较高。
通过控制开关的频率和脉宽,可以对电机的转向进行控制。
我们在本次设计中采用的PWM脉冲调制方式正是一种开关驱动方式,是直流电机最重要也是最常见的驱动方式。
采样控制理论中有一个重要的结论:
冲量相等而形状不同的窄脉冲及在具有惯性环节上时,其效果基本相同,这正是PWM控制技术的理论基础。
PWM驱动方式易与处理器接口,使用简单,最常见的就是H桥电路。
集成H桥芯片很很多型号,我们使用的是L298的芯片
驱动电路是H桥电路,图3.4为H桥驱动电路的工作原理图。
同一侧的晶体管不能同时导通。
当SW1和SW4导通,当SW2和S3截止时,电路由正电流经SW1,从电机的正极流入电机,电机反向运转。
当SW1和SW3或者SW2和SW4同时导通的时候,电机处于制动状态,电路中二极管注意是起续流保护作用。
由于电机具有较大的感性,电流不能突变,若忽然将电流切断将在功率管两端产生巨大的电压,损坏器件。
我们采用的是模块是H桥芯片L298,图3.5所示是L298的内部原理图
L298需要2个电压,一个为逻辑电路工作时所需要的5V电压VCC,另一个为功率电路所需的驱动电压VSS。
驱动电路的输入可直接与单片机的引脚相连,为了进一步提高抗干扰能力我们还使用了光电耦合器件组成的隔离电路和控制电路和动力电路进行电气隔离。
参见表3.1。
我们来分析原理,使能端输入使能。
控制输入端A端输入PWM信号,控制输入端B端输入PWM的反相信号,在一个PWM周期里,电机的电枢承受双极性的电压,电机的速度和方向均由PWM决定。
PWM占空比为50%时,对应的电机的转速为0即电机停止转动,占空比为0%-50%的时候电机的转速时-MAX-0,即电机反转;占空比为50%-100%对应的电机的转速为0-+MAX即电机正转。
电机的转动速度由PWM脉冲的频率决定。
频率高则速度快,即电机加速,频率降低则是电机转动速度减慢。
即电机减速。
使能端输入PWM信号控制输入端A端和控制输入B端输入控制电机状态的信号,电机状态参见表3.2
图3.6直流电机PWM调速方案
图3.6直流电机的PWM调速方案
3.4续流电路的设计
由于电机具有较大的感性,电流不能突变,若忽然将电流切断将在功率管两端产生巨大的电压,损坏器件。
我们应用二极管来续流,利用二极管的单向导通性。
二极管的选用必须要根据PWM的频率和电机的电流来决定。
二极管要有足够迅速的恢复时间和足够的电流承受能力。
电流如果突变易损坏功率管即L298芯片。
为保护芯片而加上续流电路,其电路原理图如图3.7所示
3.5整个电路原理图
四.软件设计
4.1主程序设计
该程序主要完成初始化,设置定时常数和中断入口程序,主程序不断的循环,处于等待中断状态。
ORG0000H
AJMPSTART
ORG0003H
LJMPINT0
ORG0030H;系统初始化
START:
MOVSP,#60H;赋初值
MOVR0,#00H;赋值R0=0
MOVR1,#00H;赋值R1=0
CLRP1.5;置0
CLRP1.6;置0
CLRP1.7;置0
MOVTMOD,#01H;写控制字
MOVTL0,#0FFH;置定时常数
MOVTH0,#0FFH
SETBEA;允许中断
SETBEX0;允许外部中断0
SETBET0;允许TL0中断
CLRIT0
SETBTR0;启动TL0
图4.1主流程图
4.2显示设计
通过P1.1,P1.2口来控制数码,显示通过调用查表和调用延时来实现数的显示,其程序代码如下:
MOVDPTR,#TAB
MOV40H,#0;置0
MOV41H,#0;置0
LED:
SETBP1.1;P1.1置1
CLRP1.2;P1.2清0
MOVA,40H;将40H的内容送A
MOVCA,@A+DPTR;查表
MOVP0,A;查表得A值送P0口
LCALLTTS;调用延时
CLRP1.1;P1.1清0
SETBP1.2;P1.1置1
MOVA,41H;将41内容送A
MOVCA,@A+DPTR;查表
MOVP0,A;查表得A值送P0口
LCALLTTS;调用延时
CLRP1.2;P1.2清0
LJMPLED;跳转到LED
ORG2000H
TAB:
DB40H,79H,24H,30H,19H
DB12H,02H,78H,00H,10H
4.3功能程序设计
结束中断以后转入相应的功能键程序,为加速,减速,正转,反转,暂停。
程序代码如下:
ITTO:
CLRP1.5
JNBP1.5,Z1
MOVA,#0FFH
SUBBA,RO
图4.2数码显示流程图图4.3中断子程序流程图
MOVTH0,A
SETBTR0;启动TR0
RETI
Z1:
MOVTH0,R0;高电平定时
SETBTR0
RETI
INT0:
CLREX0;实现键盘控制
MOVA,#0FFH
MOVP2,A
MOVA,P2
JNBACC.0,JIA
JNBACC.1,JIAN
JNBACC.2,ZZ
JNBACC.3,FF
JNBACC.4,TZ
AJMPCC
JIA:
CJNER0,#0FFH,AA;实现电机加速
AJMPCC
JIAN:
CJNER0,#00,BB;实现电机减速
AJMPCC
BB:
MOVA,R0
SUBBA,#5
MOVR0,A
AJMPCC
CC:
MOVA,R0;数码显数
MOVB,#5
DIVAB
MOV40H,A
MOV41H,B
SETBEX0
LCALLTTS;调用延时
LCALLTTS;调用延时
LCALLTTS;调用延时
LCALLTTS;调用延时
RETI
ZZ:
SETBP1.6;电机正转
CLRP1.7
LCALLTTS
LCALLTTS
LCALLTTS
SETBEX0
RETI
FF:
CLRP1.6;电机反转
SETBP1.7
LCALLTTS
LCALLTTS
LCALLTTS
SETBEX0
RETI
TZ:
CLRP1.6;实现电机停止
CLRP1.7
LCALLTTS
LCALLTTS
LCALLTTS
SETBEX0
RETI
TTS:
MOVR3,#0E0H;延时子程序
TT1S:
MOVR4,#30H
TT0S:
DJNZR4,TT0S
DJNZR3,TT1S
RET
END
五.结论
通过本次课程设计,使我学到了许多书本上无法学到的知识,也使我深刻领会到单片机技术应用领域的广泛。
不仅让我对学过的单片机知识得到巩固,同时也对单片机这门课产生了很大的兴趣,在课程设计的过程中,体会良多,收获很大。
主要有以下方面:
1.巩固了书本上学习的知识,通过本次的课程设计,对书本上面的知识更加的了解,也对编写程序有了一定的认识。
2.在本次的课程设计中,我进一步加强了自己的动手的能力和运用专业知识的能力,从中学到如何去思考和解决问题
3.通过本次的课程设计,让我了解到单片机技术对当今人们生活的重要性。
同时这次课程设计也让我明白不管做什么事都要脚踏实地,刻苦努力的去做。
在本次的课程设计中,得到了我们的指导老师王义琴老师的悉心指导和帮助,在此表示衷心的感谢。
六.参考资料
1.梅丽凤,王艳秋,汪毓铎
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于单片机de 直流电机转速测量与控制doc 基于 单片机 de 直流电机 转速 测量 控制 doc