单片机控制的直流电动机的转速检测与脉冲调速Word文档格式.docx
- 文档编号:18848011
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:10
- 大小:38.11KB
单片机控制的直流电动机的转速检测与脉冲调速Word文档格式.docx
《单片机控制的直流电动机的转速检测与脉冲调速Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机控制的直流电动机的转速检测与脉冲调速Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
在单片机控制电机的理论及应用发展得非常迅速。
因该设备未经过实物硬件的调试,所以难免存在着一些弊端,望老师给予指点。
设计制作一个脉冲调速器,使其工作频率和占空比均可调节,频率调节范围3-5KHZ,占空比调节范围为30-70%,选用额定电压为12V额定电流为0.5A的小直流电机,根据其参数设计出功率放大器,使之推动直流电动机工作,并用4位数码管显示出电动机每秒所转的圈数,以监视电动机的调速情况。
第2节系统主要硬件电路设计
2.1单片机控制系统原理
图2-1单片机控制系统原理框图
2.2单片机主机系统电路
2.2.18051的基本知识
a.8051的引脚40接+5V(VCC)电源,引脚20接电源地线。
b.传统8051工作时钟最高为12MHZ。
c.EA引脚接地,由外部程序ROM来执行程序。
d.EA引脚接高电平或+5V电源,由8051内部程序ROM来执行程序。
e.8031EA引脚必须接低电平,由外部程序ROM来执行程序。
f.89C5189C52引脚接高电平后,是由内部程序ROM来执行程序。
g.开机时必须加入芯片重置(RESET)信号。
h.RESET信号高电平动作,高电平时产生芯片重置。
I.RESET信号低电平时,则由程序ROM地址0起开始执行程序。
2.2.28051标准型设计说明
8051的程序代码可以外接程序ROM来执行,也可以使用内部4KB的空间(如8751,89C51),当程序长度超过4KB时可以使用89C52(内含8KB),若程序长度超过8KB时可以使用89C55(内含20KB)。
若是采用IO51控制板做设计则程序代码可以长达64KB的空间。
8051EA引脚是接至5V电源,表示由内部程序ROM来提供程序代码,此电路可以使用的单芯片有8751及89C51,而程序的测试方法可以使用ICE,使用89CXX烧录模拟器EPM89或是直接烧录单芯片。
当然直接烧录单芯片,做测试较麻烦还会花费许多时间,如果控制程序简单还可以,要是做课程设计程序就变得复杂了,相当浪费时间,所以手上有ICE的话就相当方便了。
如果想将项目设计得更复杂,使用更多的I/O或是功能扩充,我们建议使用8051外接程序ROM及数据RAM的控制电路,那就是8051扩充型模式设计。
图2-2单片机主机系统图
2.3脉冲信号发生器
作为实验装置脉冲信号处理我们采用555集成块和外围电路组成,555集成定时器是模拟功能和数字逻辑功能相结合的一种双极型中规模集成器件。
外加电阻、电容可以组成性能稳定而精确的多谐振荡器、单稳电路、施密特触发器等,应用十分广泛。
555定时器的外引线排列图和内部原理框图如图2-3、2-4所示,功能见表2-5。
它是由上、下两个电压比较器、三个5kΩ电阻、一个RS触发器、一个放电三极管T以及功率输出级组成。
比较器C1的反相输入端⑤接到由三个5kΩ电阻组成的分压网络的2/3Vcc处(⑤也称控制电压端),同相输入端⑥为阀值电压输入端。
比较器C2的同相输入端接到分压电阻网络的1/3Vcc处,反相输入端②为触发电压输入端,用来启动电路。
两个比较器的输出端控制RS触发器。
RS触发器设置有复位端
④,当复位端处干低电平时,输出③为低电平。
控制电压端⑤是比较器C1的基准电压端,通过外接元件或电压源可改变控制端的电压值,即可改变比较器C1、C2的参考电压。
不用时可将它与地之间接一个O.01μF的电容,以防止干扰电压引入。
555的电源电压范围是+4.5~+18V,输出电流可达100~200mA,能直接驱动小型电机、继电器和低阻抗扬声器。
图2-3555集成电路引脚排列图
图2-4时基电路555电路结构图
表2-5555芯片功能表
触发
阈值
复位
IS
放电端
输出
H
导通
L
原状态
截止
多谐振荡器的电路图和波形图如图2-6所示。
电源接通后,Vcc通过电阻R1、R2向电容C充电。
当电容上电vC=2/3Vcc时,阀值输入端⑥受到触发,比较器C1翻转,输出电压Vo=0,同时放电管T导通,电容C通过R2放电;
当电容上电压Vc=1/3Vcc,比较器C2工作,输出电压Vo变为高电平。
C放电终止、又重新开始充电,周而复始,形成振荡。
其振荡周期与充放电的时间有关:
充电时间:
放电时间:
振荡周期:
T=tPH+tPL≈0.7(R1+2R2)C
振荡频率:
f=1/T=
占空系数:
当R2>
>
R1时,占空系数近似为50%。
图2-6多谐振荡器的电路图和波形图
由上分析可知:
a)电路的振荡周期T、占空系数D,仅与外接元件R1、R2和C有关,不受电源电压变化的影响。
b)改变R1、R2,即可改变占空系数,其值可在较大范围内调节。
c)改变C的值,可单独改变周期,而不影响占空系数。
另外,复位端④也可输入1个控制信号。
复位端④为低电平时,电路停振。
2.4脉冲计数与显示电路
图2-7脉冲计数原理图
转速检测采用红外发射和接收管,在电动机的转盘上开有一小口,电动机每转一转就接收到一次脉冲信号。
信号经过缓冲、零压比较、反相电路到单片机计数脉冲输入端T1,P0口输出信号经过74HC373地址锁存器构成动态显示电路,显示电动机的转速。
2.5集成功率放大器LM386
集成电路(IC)按其功能,分为模拟集成电路和数字集成电路两大类,本课题采用的LM386是一种模拟集成电路,它具有功率放大功能,其外形封装为双列直插式,属塑封类集成电路。
其引脚排列方式见图2-8
LM386是美国国家半导体公司系列功放集成电路中的一个品种,因其有功耗低、工作电源电压范围宽、外围元件少和装置调整方便等优点,故广泛应用通信设备、收录机、电子琴和各类电子设备中,其典型参数如下:
工作电压范围4~12V,静态电流4mA,输出功率660mW(最大),电压增益为46dB(最大),带宽300kHz,谐波失真0.2%,输入阻抗50KΩ,输入偏置电流250nA。
该电路有同相、反相两个输入端,即:
从5脚输出电压信号的极性与3脚(同相端)输入极性相同,而与2脚(反相端)输入信号的极性相反。
1脚与8脚之间接入一个几十微法电容时,电路增益达到最大值。
电路增益可根据实际需要调整。
图2-8LM386外形引脚图
第3节系统的软件设计
3.1控制程序说明
在1S之内计数外部脉冲的频率。
由定时器0进行1S的定时(定时方式),定时器1对外部脉冲进行计数(计数方式)借鉴windows编程的原理,在单片机编程中引入消息的概念,将中断产生的标志作为消息,而数据处理则放在消息循环中进行。
在这个例子中中断服务程序中只进行数据的采集和标志位的设置(发送消息而将数据的处理放到运行时间要求不很精确的中断服务程序之外的主程序循环中(消息循环)。
这样一方面减少了中断服务程序的长度,缩短了中断服务程序执行的时间,提高了中断处理的实时性,另一方面又不影响数据的处理。
从而很好地解决了采集的实时性和数据处理耗时多而影响时间累计之间的矛盾。
和PC机相比,单片机资源十分有限。
因此,单片机系统不可能像windows系统那样建立庞大的消息循环机制,将消息分发给各个程序并行处理。
在基于消息的单片机编程中,采取一种简化的方式,消息可以这样来定义:
当某个事件(例如中断)发生时,事件处理程序(例如中断服务程序)设置相应的标志,不同的标志即代表不同的消息;
而主程序所进行的消息循环就是主程序不断地判断这些标志,以决定启动哪一个处理函数(即将消息发送给特定的消息处理函数)。
这种方法在多中断系统中使用,可以明显地提高中断的实时性;
另外,由于在中断服务程序中不需要调用数据处理程序,也有效地防止了代码重入带来的问题。
3.2程序流程图
图3-1程序流程图
3.3程序清单
ORG0000H
LJMPMIAN
ORG000BH
LJMPT0SEV
ORG0100H0
MAIN:
MOVSP,#60H
CLRF0
MOVR1,#20H
MOVR2,#30H
D1:
MOV@R1,#00H
INCR1
DJNZR2,D1;
内存单元初始化,清0
MOV50H,#32H;
记时中断20MS/次,共中断50次
CLREA
CLRET0
CLRTR1;
关闭计数器
CLRP2.0
CLRP2.1;
关显示锁存器
MOVTMOD,#51H;
向TMOD中送控制字
MOVTL0,#0E0H
MOVTH0,#0B1H;
向定时器送初值
SETBEA
SETBET0;
开启中断
SETBTR0
SETBTR1;
启动定时器和计数器
DISPLAY:
LCALLDIS;
调显示
JBCF0,LOOP
SJMPDISPLAY;
等待中断
LOOP:
LCALLCHULI
SJMPDISPLAY;
有关子程序
T0SEV:
定时器0中断子程序
DJNZ50H,TT;
记时1S是否到
关计数器
SETBF0
TT:
RETI
CHULI:
MOV28H,TL1;
数据处理子程序
MOV29H,TH1;
将计数器中的值读出,放在28H,29H里
MOVTH0,#0B1H
MOVTL0,#0E0H;
向计数器里送初值
MOVTH1,#00H
MOVTL1,#00H;
将计数器置0
开启计数器
MOV50H,#32H;
重新向50H里装50
MOVR2,29H
MOVR3,28H
LCALLBIANH;
调数制转换子程序
MOV31H,R5
MOV32H,R6
LCALLREAD;
调更新数据子程序
调显示子程序
RET
READ:
MOV20H,#00H;
将组合BCD码分开放入显示缓冲区更新数据
MOV21H,#00H
MOV22H,#00H
MOV23H,#00H
MOVR0,#20H
MOVA,31H
SWAPA
XCHDA,@R0
INCR0
XCHA,@R0
MOVA,32H
XCHDA,@R0
MOVA,20H;
高位为0不显示
JNZFF
MOV20H,#0BH
MOVA,21H
MOV21H,#0BH
MOVA,22H
MOV22H,#0BH
FF:
DIS:
MOVR0,#20H;
显示子程序
MOVR1,#08H
MOVR3,#04H
DIS1:
MOVDPTR,#TAB
MOVA,@R0
MOVCA,@A+DPTR
SETBP2.0
CPLA
MOV,P0,A
MOVA,R1
SETBP2.1
MOVP0,A
RRA
MOVR1,A
CLRP2.1
LCALLDIR1
DJNZR3,DIS1
DIR1:
MOVR4,#09H;
延时子程序
MEN1:
MOVR5,#00H
MEN2:
DJNZR5,MEN2
DJNZR4,MEN1
BIANH:
CLRA;
将十六进制数转化成组合BCD码
MOVR4,A
MOVR5,A
MOVR6,A
MOVR7,#10H
IBTL2:
CLRC
MOVA,R3
RLCA
MOVR3,A
MOVA,R2
MOVR2,A
MOVA,R6
ADDCA,R6
DAA
MOVA,R5
ADDCA,R5
MOVA,R4
ADDCA,R4
DJNZR7,IBTL2
RET;
数制转换结束,出口在R4(舍弃),R5,R6
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,7FH,00H,0FFH,END
结束语
在整个课题设计过程中,我主要围绕着如何用单片机计数显示的控制,从方案的制定到软件的编写我都经过反复的思考,并且查看了很多的参考书籍和参考资料,以及得到了同学的大力帮助。
在本次课题设计中,我进一步加强了自己的动手能力和应用专业知识的能力,从中学习到如何去思考和解决问题,以及如何灵活地改变方向去设计方案;
特别是深刻了解到的是软件和硬件结合的重要性,以及两者的联系和配合的作用。
通过课题设计,我即巩固了专业知识,又学到了在程序设计中的许多流程和注意的事项,增强了产品开发的意识,是一次实践和锻炼机会。
参考文献
[1]《8051单片微型计算机原理与机课程设计实训教材》陈明荧编着:
清华大学出版社
[2」《8051单片机课程设计实训教材》陈明荧编着:
[3]《8051单片机实践与应用》无金戊、沈庆阳、郭庭吉编着:
[4]《电子技术实践与训练》郝军、谬先芸编着:
高等教育出版社
总体评价
得分
选题还不错,格式基本规范,单片机选择8051欠合理
13
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 控制 直流电动机 转速 检测 脉冲 调速