直流电机控制器设计.docx
- 文档编号:30815208
- 上传时间:2024-01-30
- 格式:DOCX
- 页数:17
- 大小:75.93KB
直流电机控制器设计.docx
《直流电机控制器设计.docx》由会员分享,可在线阅读,更多相关《直流电机控制器设计.docx(17页珍藏版)》请在冰豆网上搜索。
唐山学院
单片机原理及应用课程设计
题目直流电机控制器设计
系(部)信息工程系
班级12点本2班
姓名李**
学号
指导教师张国旭田红霞吴铮
2015年6月8日至6月19日共2周
2015年6月17日
课程设计成绩评定表
出勤
情况
出勤天数
缺勤天数
成
绩
评
定
出勤情况及设计过程表现(20分)
课设答辩(20分)
设计成果(60分)
总成绩(100分)
提问
(答辩)
问题
情况
综
合
评
定
指导教师签名:
年月日
目录
1引言 1
2设计内容及要求 2
2.1设计内容 2
2.2设计要求 2
3设计方案 3
3.1系统分析 3
3.2系统构成 3
3.3工作原理 3
4硬件电路设计 5
4.1硬件分析与设计 5
4.2AT89C51芯片简介 5
4.3多位数码管简介 6
4.4复位电路与时钟电路 6
4.5直流电机驱动电路设计 7
4.6键盘电路设计 7
5软件设计与仿真 9
5.1应用软件的编制和调试 9
5.2程序总体设计 9
5.3仿真图形 10
6设计总结与体会 13
参考文献 14
附录一源程序代码 15
附录二电机原理图 22
附录三仿真电路图 23
1引言
现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确而又迅速的获得这些参数就需要受制于现代信息基础的发展水平。
现在国内外工业上对电机的调速基本已经不再使用模拟调速,而采用数字调速系统,而数字调速系统大部分都是用单片机来进行控制,数字调速系统具有控制精确度高,非常稳定,受环境影响小,效率高等优点,所以在国内外的使用越来越广泛。
与交流电动机相比,直流电机结构复杂、成本高、运行维护困难,但是直流电机具有优良的调速特性,调速平滑,方便,调速范围广,过载能力大,能承受频繁的冲击负载,可实现频繁的无级快速起动、制动和反转;能满足生产过程中自动化系统各种不同的特殊运行要求等许多优点,因此在许多行业仍大量应用。
直流电动机的起动和调速性能、过载能力强等特点显得十分重要,为了能够适应发展的要求,选用单片机作为控制系统的核心以提高整个系统的可靠性和可行性。
近年来,直流电动机的机构和控制方式都发生了很大的变化。
随着计算机进入控制领域以及新型的电力电子功率元件的不断出现,PWM调速已成为直流电机新的调速方式。
PWM调速具有开关频率高、低速运行稳定、动态性能良好、效率高等优点,更重要的是这种控速方式很容易在单片机控制系统中实现,因此具有很好的发展前景。
2设计内容及要求
2.1设计内容
(1)以单片机为控制核心,用PWM控制技术实现对直流电机的速度及转向进行控制。
(2)选择合适驱动芯片
(3)在数码管上显示当前转速
(4)分别用按键进行加、减速及正反转控制。
2.2设计要求
所设计的直流电机控制器需要满足以下要求:
(1)进行系统总体设计
(2)完成系统硬件电路设计
(3)完成系统软件设计及仿真
3设计方案
3.1系统分析
针对本课题的设计任务,进行分析得到:
本次课程设计以AT89C51单片机为核心,以5个按键作为输入端,达到控制直流电机的正转、反转、停止、加速、减速。
在设计中,采用PWM技术对电机进行控制。
3.2系统构成
该直流电机控制系统的设计,在总体上可分为以下5个部分组成:
输入模块,AT89C51单片机,电源模块,驱动模块,直流电机。
图3-1系统构成
3.3工作原理
对于直流电机来说,机械特性方程式为:
,额定电枢电压、额定磁通量
,与电机有关的常数
,电枢外加电阻、电枢内电阻
n,想空载转速、转速降
分析公式可得,当分别改变、和时,可以得到不同的转速n,从而实现对速度的调节。
由于=T,当改变励磁电流If时,可以改变磁通量的大小,从而达到变磁通调速的目的。
但由于励磁线圈发热和电动机磁饱和的限制,电动机的励磁电流If和磁通量只能在低于其额定值的范围内调节,故只能弱磁调速。
而对于调节电枢外加电阻时,会使机械特性变软,导致电机带负载能力减弱。
PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。
PWM可以应用在许多方面,如电机调速、温度控制、压力控制等。
在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内接通和断开时间的长短。
通过改变直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速。
在脉冲作用下,当电机通电时,速度增加;电机断电时,速度逐渐减少。
只要按一定规律,改变通、断电的时间,即可让电机转速得到控制。
当改变占空比时,可以得到不同的电机平均速度,从而实现调速。
4硬件电路设计
4.1硬件分析与设计
键盘向单片机数日相应控制指令,由单片机通过P3.0与P3.1其中一口输出与转速相应的PWM脉冲,另一口输出低电平,经过信号放大,驱动电动机来控制电路,实现电动机转向和转速的控制。
4.2AT89C51芯片简介
AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
其引脚图如下:
图4-1AT89C51芯片引脚
4.3多位数码管简介
图4-2数码管
LED显示器由七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器。
为了显示数字或符号,要为LED显示器提供代码,即字形代码。
其段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。
4.4复位电路与时钟电路
复位电路和时钟电路是维持单片机最小系统运行的基本模块,复位电路通常分为两种:
上电复位和手动复位。
本次设计选用手动复位。
图4-3复位电路与时钟电路
4.5直流电机驱动电路设计
驱动芯片采用L298驱动直流电机,L298具有驱动能力强,外围电路简单等优点。
由于单片机P3口输出的电压最高才有5V,难以直接驱动直流电机。
所以我们需要使用恒压恒流桥式2A驱动芯片L298来驱动电机。
L298可接受标准TTL逻辑电平信号,可接4.5~7V电压。
4脚接电源电压,电压范围+2.5~46V。
输出电流可达2.5A,可驱动电感性负载。
1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。
L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机。
本设计我们选用驱动一台电动机。
5,7,10,12脚接输入控制电平,控制电机的正反转。
同时需要加四个二极管在电机的两端,防止电机反转的时候产生强大的冲击电流烧坏电机。
具体驱动电路如下:
图4-4驱动电路
4.6键盘电路设计
ZHENG、FAN、JIA、JIAN、STOP五个开关分别与单片机的P1.0,P1.1,P1.2,P1.3,P1.4相连,然后再与地相连。
正转实现直流电机的正转,反转实现直流电机的反转,停止实现直流电机的停转,加速实现直流电机的加速,减速实现直流电机的减速,具体键盘电路如下:
图4-5键盘电路
5软件设计与仿真
5.1应用软件的编制和调试
使用Keil软件编程时,项目开发流程和其它软件开发项目的流程较为相似。
(1)创建一个项目,从器件库中选择目标器件,配置工具设置;
(2)用C语言或会变语言创建源程序;
(3)用项目管理器生成应用;
(4)修改源程序中的错误;
(5)测试,连接应用。
5.2程序总体设计
利用P3口,编制程序输出一串脉冲,经放大后驱动直流电机,改变输出脉冲的电平的持续时间,达到使电机正转、反转、停止、加速、减速等目的。
由软件编程从P3.0/P3.1管脚产生PWM信号,经驱动电路输出给电机,从而控制电机得电与失电。
软件采用延时法进行设计。
单片机上电后,系统进入准备状态。
按动正转按钮后,根据P3.0为高电平时实现电机正转,P3.1为高电平时实现电机反转。
根据不同的加减速按钮,调整P3.0/P3.1输出高低电平时的有效值,进而控制电机的加减速。
其主程序流程如图2所示:
图5-1主程序流程
5.3仿真图形
按下“ZHENG”按钮,直流电机运行效果如图所示:
图5-2电机正转效果
按下“JIA”按钮,直流电机运行效果如图所示:
图5-3电机正转加速效果
按下“JIAN”按钮,直流电机运行效果如图所示:
图5-4电机正转减速效果
按下“STOP”按钮,直流电机运行效果如图所示:
图5-5电机停止效果
按下“FAN”按钮,直流电机运行效果如图所示:
图5-6电机反转效果
6设计总结与体会
经过这次的电机速度控制设计,让我收获很多,无论是硬件电路的设计还是软件的编程都让我受益匪浅。
使用系统仿真软件protues和编译软件keil,让我体会到软件对于一个系统来说是多么重要。
对于刚学汇编不久的我来说,编制一个完整的系统软件可谓无任何经验可言。
在设计过程中,我们主要学习体会了单个模块的搭建与编程。
在这个系统搭建过程中,不但要将这些子模块有机的结合在一起,还要让它们较好的协调起来。
通过本次课程设计,我进一步了解了系统搭建的过程和系统软件编程的步骤,为今后的学习打下良好的基础。
这次课程设计让我把理论应用到了实践,同时通过课程设计,也加深了我对专业理论知识的理解和掌握。
在解决问题的过程中,我查阅了大量专业书籍,获得了许多专业知识,拓展了视野,提高了我的理论水平和实际的动手能力,并让我学会了解决问题的方法,激发了我的探索精神。
使我深入的了解到了实践能力对于工科学生的重要性,增强了我的实践动手能力,也为我接下来大四的毕业设计提供了宝贵的经验。
这次的设计让我明白了在学校中所学的任何科目都是相当重要的,因为在设计创作中,每个科目,每个方面的知识都是缺一不可的,我们都必须能够融会贯通。
参考文献
[1]彭为等,单片机典型系统设计实例精讲,电子工业出版社,2006
[2]李群芳,单片机原理与接口及应用,清华大学出版社,2005
[3]彭为等,单片机典型系统设计实例精讲,电子工业出版社,2006
[4]张毅刚等,单片机原理与应用设计,电子工业出版社,2008
[5]陈明荧,8051单片机课程设计实训教材,清华大学出版社,2004
附录一源程序代码
ORG0000H
AJMPSTART
ORG000BH;定时器T0入口地址
AJMPIV0
ORG0013H;外部中断1入口地址
AJMPINT5
ORG001BH;定时器T1的入口地址
AJMPIV1;程序的初始化阶段
START:
MOV40H,#0FFH
MOV41H,#0E0H
MOV42H,#0D0H
MOV43H,#0C0H
MOV44H,#0B0H
MOV45H,#0A0H
MOV46H,#90H
MOV47H,#80H
MOV48H,#70H
MOV49H,#60H
MOV50H,#50H
MOV51H,#40H
MOV52H,#30H
MOV53H,#20H
MOV52H,#10H
MOV53H,#00H
MOVR7,#0
MOVR1,#00H
MOVR2,#05H
MOVR0,#46H
MOVTMOD,#11H;设置定时器的工作方式1
MOVTH1,#80H
MOVTL1,#00H
MOVTH0,#3CH
MOVTL0,#0B0H;TI和T0的初值(计时时间=(65536-X)*2us)
SETBTR0;开T0
SETBTR1;开T1
SETBEA;总中断允许
SETBET1;T1中断允许
SETBET0;T0中断允许
SETBIT1;外部中断下降沿有效
SETBEX1;外部中断允许
;主程序阶段
START1:
MOVDPTR,#TAB
MOVA,32H
MOVCA,@A+DPTR;查表32H中的数
MOVP2,#02H;位选信号第二个LED灯亮
MOVP0,A
ACALLDELAY
MOVA,31H
MOVCA,@A+DPTR
MOVP2,#00000100B
MOVP0,A
ACALLDELAY;31H中查表所得数在P0口显示,为选第三个LED灯亮
MOVA,30H
MOVCA,@A+DPTR
MOVP2,#00001000B
MOVP0,A
ACALLDELAY;30H中的数改变后查表读数显示
MOVP1,#0FFH
JNBP1.4,TINGZHI
JNBP1.0,QIDONG
JNBP1.1,FANZHUAN
JNBP1.2,JIASU
JNBP1.3,JIANSU
LJMPSTART1
;正转
QIDONG:
JNBP1.0,QI;P1.0不为1跳转
LJMPSTART1
QI:
SETBP3.0
CLRP3.1
LJMPSTART1
;反转
FANZHUAN:
JNBP1.1,FAN
LJMPSTART1
FAN:
SETBP3.1
CLRP3.0
LJMPSTART1
;停止
TINGZHI:
JNBP1.4,TING
LJMPSTART1
TING:
CLRP3.0
CLRP3.1
LJMPSTART1
;加速
JIASU:
LCALLDELAY
JNBP1.2,JIA
LJMPSTART
JIA:
CJNER0,#53H,NEXT
LJMPSTART1
NEXT:
INCR0
LJMPSTART1
;减速
JIANSU:
LCALLDELAY
JNBP1.3,JIAN
LJMPSTART
JIAN:
CJNER0,#40H,NEXT1
LJMPSTART1
NEXT1:
DECR0
LJMPSTART1
;定时器判断PWM
IV1:
JBP3.2,NX
MOVA,@R0
MOVTH1,A
MOVTL1,#00H
CPLP3.2
AJMPNETX
NX:
MOVTH1,#80H
MOVTL1,#00H
CPLP3.2
NETX:
RETI;中断每一个脉冲数加1
INT5:
INCR1
INCR1
RETI;定时器实现每100ms的记数,转换成转数
IV0:
DJNZR2,NEXT2
MOVR2,#05H
CLRA;先清零
MOVR3,A
MOVR4,A
MOVR5,#16;共转换十六位数
MOVA,R1
MOVB,#5
MULAB
MOVR1,A
LOOP:
CLRC
MOVA,R1;从待转换数的高端移出一位到Cy
RLCA
MOVR1,A
MOVA,b
RLCA
MOVb,A
MOVA,R4;送到BCD码的低端
ADDCA,R4;带进位加。
自身相加,相当于左移一位
DAA;十进制调整,变成BCD码
MOVR4,A
MOVA,R3
ADDCA,R3
DAA
MOVR3,A
DJNZR5,LOOP;共转换十六位数
MOVA,R4
ANLA,#0FH
MOV30H,A
MOVA,R4
SWAPA
ANLA,#0FH
MOV31H,A
MOVA,R3
ANLA,#0FH
MOV32H,A
MOVR1,#00H
NEXT2:
MOVTH0,#3CH
MOVTL0,#0B0H
RETI
;数码管显示延时程序
DELAY:
MOVR7,#10
Y:
MOVR6,#00H
DJNZR6,$
DJNZR7,Y
RET
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
附录二电机原理图
附录三仿真电路图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 直流电机 控制器 设计