单片机课程设计直流电机.docx
- 文档编号:11564342
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:13
- 大小:106.27KB
单片机课程设计直流电机.docx
《单片机课程设计直流电机.docx》由会员分享,可在线阅读,更多相关《单片机课程设计直流电机.docx(13页珍藏版)》请在冰点文库上搜索。
单片机课程设计直流电机
一、引言
直流电机调速逐步从模拟化向数字化转变,特别是单片机技术的应用,使直流电机调速技术进入到一个新的阶段。
直流电动机具有良好的起动、制动性能,宜于在大范围内平滑调速,在许多需要调速或快速正反向的电力拖动领域中得到了广泛的应用。
从控制的角度来看,直流调速还是交流拖动系统的基础。
本设计是研究对直流电机调速的控制装置,本课题主要是利用单片机来构成控制系统。
主要包括:
单片机、霍尔元件速度采集电路、直流电机、DAC0832、键盘、显示器等几部分组成。
首先对预定速度进行设置,并通过数码管显示出来。
二、设计原理
2.1总体设计原理
系统的原理框图如图2.1所示,主要包括:
单片机、霍尔元件速度采集电路、直流电机、DAC0832、键盘、显示器等几部分组成。
图2.1总体设计原理框图
在电压允许范围内,直流电机的转速随着电压的升高而加快,若加上的电压为负电压,则电机会反向旋转。
D/A转换是把数字量转换成模拟量的变换,实验台上D/A电路输出的是模拟电压信号。
实验室中的实验仪的D/A变换器可输出-8V~+8V的电压,将电压经驱动后加在直流电机上,使其运转。
通过单片机输出数据到D/A变换电路,控制电压的高低和正负,观察电机的旋转情况。
2.2D/A转换电路
图2.2D/A转换电路
DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。
D/A转换结果采用电流形式输出,若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。
运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。
实验仪上提供了D/A转换电路如图2.2所示。
我们可以通过软件编程控制D/A转换芯片DAC0832,输出相应电流值,经过采样电路取出模拟量电压值,用电压表测量电压输出端子,读出电压值。
2.3电动机调速原理
由直流电机的速度公式n=(Ua-IaRa)/CeΦ,其中n是电机转速,Ua是电枢电压,Ia是电枢电流,Ra是电枢回路总电阻,Ce是电极常数,Φ是电机的励磁磁通。
对于极对数是p,匝数是n,电枢支路数为a的电机来说Ca是常数。
由于Ra为电枢回路电阻故其值很小,通过调节电阻改变转速的效果不明显。
如果通过调节磁通量,对于它励电机其有外接的电源电压决定。
故一般通过改变电枢电压来达到调节转速的目的。
直流电机原理图如下:
图2.3直流电机原理图
2.4霍尔转速传感器的工作原理
霍尔元件测速原理图如下所示:
图2.4霍尔元件测速原理图
霍尔转速传感器的主要工作原理是霍尔效应,也就是当转动的金属部件通过霍尔传感器的磁场时会引起电势的变化,通过对电势的测量就可以得到被测量对象的转速值。
霍尔转速传感器的主要组成部分是传感头和齿圈,而传感头又是由霍尔元件、永磁体和电子电路组成的。
霍尔器件是有半导体材料制成的一种薄片,器件的长、宽、高分别为l、b、d。
若在垂直于薄片平面(沿厚度d)方向施加外加磁场B,在沿l方向的两个端面加以外电场,则有一定的电流经过。
由于电子在磁场中运动,所以将受到一个洛仑磁力,其大小为:
fl=qVB
式中:
fl――洛仑磁力,q――载流子电荷,V――载流子运动速度,B――磁感应强度。
这样使电子的运动轨迹发生偏移,在霍尔元器件薄片的两个侧面分别产生电子积聚或电荷过剩,形成霍尔电场,霍尔元器件两个侧面间的电位差UH称为霍尔电压。
霍尔电压大小为:
UH=RH×I×B/d(mV)
式中:
RH---霍尔常数,d---元件厚度,B---磁感应强度,I---控制电流
设KH=RH/d,则UH=KH×I×B(mV)KH为霍尔器件的灵敏系数(mV/mA/T),它表示该霍尔元件在单位磁感应强度和单位控制电流下输出霍尔电动势的大小。
应注意,当电磁感应强度B反向时,霍尔电动势也反向。
霍尔转速传感器就是通过磁力线密度的变化,在磁力线穿过传感器上的感应元件时,产生霍尔电势。
霍尔转速传感器的霍尔元件在产生霍尔电势后,会将其转换为交变电信号,最后传感器的内置电路会将信号调整和放大,输出矩形脉冲信号,其频率和转速成正比,测出脉冲的周期或频率即可计算出转速。
2.5LED6位数字显示器及4×6键盘
本实验中LED显示电路和键盘电路集成在一个集成电路中。
LED显示和键盘的等效电路如图2.5。
显示控制的位码由74HC374输出,经MC1413反向驱动后,做LED的位选通信号。
位选通信号也可作为键盘列扫描码,键盘扫描的行数据从74HC245读回,74HC374输出的列扫描码经74HC245读入后,用来判断是否有键被按下,以及按下的是什么键。
如果没有键按下,由于上拉电阻的作用,经74HC245读回的值为高电平,如果有键按下,74HC374输出的低电平经过按键被接到74HC245的端口上,这样从74HC245读回的数据就会有低位,根据74HC374输出的列信号和74HC245读回的行信号,就可以判断哪个键被按下。
LED显示的段码由另一个74HC374输出。
实验时,将KEY/LED_CS接到片选端CS0上,则位码输出的地址就为08
002H,段码输出的地址就是08004H,键盘行码读回的地址为08001H。
三、设计说明
3.1时钟、复位电路的选择
(1)此系统采用内部时钟方式,其原理图如图4所示。
MCS-51单片机允许的晶振可在1.2~24MHz之间选择,此系统选12MHz。
则一个机器周期为1μs。
C3、C4大小为30pF。
图3.1内部方式时钟电路
(2)此系统复位电路采用上电按钮复位电路,如图5所示。
复位端高电平有效。
C的典型值为10μF。
当按下开关一定时间,电容相当于短路,电容开始充电,RST为高电平,单片机复位,当电容两端电压等于5V时,RST呈现低电平,复位完成。
图3.2上电与按钮复位电路
3.2键盘说明
键盘是由若干个按键组成的开关矩阵,它是最简单的单片机输入设备,通过键盘可输入数据和命令,实现简单的人机对话。
此处用的键盘是矩阵式键盘,对键的识别用扫描方法完成:
首先判断键盘中有无键按下,将全部行线Y0-Y3置低电平,然后检测列线的状态。
只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。
若所有列线均为高电平,则键盘中无键按下。
然后,判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。
其方法是:
依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。
在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。
若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。
3.3LED显示
由课题的要求,要求用霍尔软件采集到直流电动机的转速后,向单片机输出相应的脉冲,计算出电动机转速并显示在LED显示器上。
在单片机应用系统中,显示器是最常用的输出设备。
在此选用两个共阴极数码管显示脉冲数,采用动态扫描显示,即用扫描的方法一位一位轮流点亮显示器的各个位,对于显示器的每一位来说,每隔一段时间点亮一次,利用人眼的视觉暂留效应可以看到整个动态显示,只要速度够快,字符不会闪烁。
四、程序结构流程图
图4.1直流电机控制流程图
图4.2键盘扫描控制流程图
图4.3LED显示流程图
五、设计总程序
INequ08001h;键盘读入口
OUTBITequ08002h;位控制口
OUTSEGequ08004h;段控制口
cs0832equ9000h
ledbufequ70h;显示缓冲区
org0000h
ljmpstart
delay1:
movr7,#255;延时子程序1
deloop1:
movr6,#255
nop
djnzr6,$
djnzr7,deloop1
ret
delay2:
movr7,#12;延时子程序2
deloop2:
movr6,#249
djnzr6,$
djnzr7,deloop2
ret
LEDtable:
;八段管显示码
db3fh,06h,5bh,4fh,66h,6dh,7dh,07h
db7fh,6fh,77h,7ch,39h,5eh,79h,71h
DACtable:
db00h,80h,80h,80h,80h,00h
db60h,80h,80h,80h,80h,60h
db0c0h,80h,80h,80h,80h,0c0h
db0ffh,80h,80h,80h,80h,0ffh
keyloop:
acallkey
cjnea,#0fh,keyloop0
acalldelay2
ljmpkey
keyloop0:
acalldelay2;键盘去抖动
acallkey
cjnea,#0fh,keyb
ljmpkeyloop
keyb:
movr1,#0dfh
movr5,#00h
L0:
movdptr,#OUTBIT;位控,选中键盘第一列
mova,r1
movx@dptr,a
movdptr,#IN
movxa,@dptr
jbAcc.3,L1;检查是否有键位被按下
mova,#0
jmpkeyc
L1:
jbAcc.2,L2
mova,#6
jmpkeyc
L2:
jbAcc.1,L3
mova,#12
jmpkeyc
L3:
jbAcc.0,next
mova,#18
jmpkeyc
key:
movdptr,#OUTBIT;位控清零,键盘读入到a的低四位
mova,#00h
movx@dptr,a
movdptr,#IN
movxa,@dptr
anla,#0fh
ret
keyc:
movdptr,#DACtable
movca,@a+dptr
movdptr,#cs0832
movx@dptr,a
calldelay2
ret
next:
movdptr,#cs0832
mova,#80h
movx@dptr,a
calldelay2
ret
xianshi:
movTH1,#00h;定时器清零
movTL1,#00h
setbTR1
calldelay1
mova,TL1
movb,#0ah;将转速十位、个位分别放入寄存器a、b
divab
acallled
movr0,#LEDBUF
mov@r0,a
mova,b
acallled
incr0
mov@r0,a
LED1:
movr0,#LEDBUF
movr2,#00000010b;选中6位显示管的低2位管显示转速
Loop2:
movdptr,#OUTBIT
mova,r2
movx@dptr,a
mova,@r0
movdptr,#OUTSEG;段控,显示对应的数字
movx@dptr,a
calldelay2
mova,r2
rra
movr2,a
incr0
movdptr,#OUTBIT
mova,r2
movx@dptr,a
mova,@r0
movdptr,#OUTSEG
movx@dptr,a
calldelay2
ret
Led:
movdptr,#LEDtable
movca,@a+dptr
ret
start:
movsp,#70h
movTMOD,#50h
movIE,#8ch
loop:
acallkeyloop
loop1:
acallxianshi
end
六、总结
本设计以MCS-51单片机为控制核心,设计了直流电机调速控制系统。
用8255A芯片进行I/O口扩展,用DAC0832芯片进行D/A转换和I/V转换输出电压从而对直流电机进行转速控制,利用霍尔元件对直流电机的转速进行采集,并送到单片机。
用键盘对电机状态进行控制,并用八段数码管显示。
通过一周的课程设计,是我对单片机的工作和原理有了根深刻的认识,深入进行系统的编程使我对汇编语言的逻辑性有一定了解,学会了伟福软件的软硬件的调试方法,并加深了的对课本知识的理解。
七、参考文献
[1]张淑清单片微型计算机接口技术及其应用国防工业出版社2001.5
[2]张淑清单片机原理及应用技术国防工业出版社2010.8
[3]王秋爽曾昭龙单片机开发基础与经典设计实例机械工业出版社2008.3
..
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 直流电机