直流电机智能化控制设计论文Word文档下载推荐.docx
- 文档编号:16318143
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:12
- 大小:161.23KB
直流电机智能化控制设计论文Word文档下载推荐.docx
《直流电机智能化控制设计论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《直流电机智能化控制设计论文Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
1.了解直流电机控制原理。
2.学习单片机控制直流电机的编程方法。
3.了解单片机控制外部设备的常用电路。
4.学习和掌握单片机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。
5.通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
二、设计要求
1、利用D/A电路,输出-8V到+8V的电压,控制直流电机。
2、电机速度可调,具有启动键、方向控制键及提示灯、加速键、减速键及停止键:
S0键-升速,每按一次,电压值增大一个定值,转速提高。
S1键-减速,每按一次,电压值减小一个定值,转速降低。
3、利用霍尔元件感应电机转速,读出感应脉冲,从而计算出电机转速,用数码管显示出来。
三、电路及连线设计
DA_CS------CS1脉冲输出------P3.4-8到+8------直流电压
P1.0------K0启动P1.1------K1停止P1.2------K2反方向运动
P1.3------K3正方向减速P1.4------K4正方向增速P1.7------方向灯亮
P1.5------K5反方向减速P1.6------K6反方向加速CS0地址译码------KEY/LED-CS
四、使用说明
在电压允许范围内,直流电机的转速随着电压的升高而加快,若加上的电压为负电压,则电机会反向旋转。
本实验仪的D/A变换可输出-8V到+8V的电压,将电压经驱动后加在直流电机上,使其运转。
通过单片机输出数据到D/A变换电路,控制电压的高低和正负,观察电机的旋转情况。
在电机转盘上安装一个小磁芯,用霍尔元件感应电机转速,用单片机控制读回感应脉冲,从而测算出电机的转速。
有兴趣的同学,可以做一个恒速的试验,即让电机转速保持一定。
若电机转速偏低,则提高输出电压,若电机转速偏高,则降低输出电压。
首先给电机一定的阻力,让转速保持一定,然后稍微给加大阻力,观察D/A输出的电压是否能做出反应,再减小阻力,也观察D/A电压,有何变化。
注意所加的阻力不能过大,以免电机烧毁。
五、流程图设计
否
是
六、程序设计如下:
CS0832EQU09000H
OUTBITEQU08002H;
位控制口
OUTSEGEQU08004H;
段控制口
LEDBUFEQU60H;
显示缓冲
NUMEQU70H;
显示的数据
ORG0000H
SJMPSTART
ORG0030H
START:
CLRP1.7;
指示是否反转
MOVDPTR,#CS0832;
DPTR指针到电机控制口
MOVA,#080H;
零电压对应值给寄存器A
MOVX@DPTR,A;
电机转速为零
LJMPSUDUXIANSHI;
速度显示
ZZ:
正传开始反转指示灯灭
MOVDPTR,#CS0832;
MOVA,#0B0H;
电机最小启动电压对应值给寄存器A
MOVX@DPTR,A;
给电机初始速度
LCALLDELAY;
等待电机运转稳定
FZ:
SETBP1.7;
反转开始反转指示灯亮
MOVA,#050H;
反转时电机最小启动速度
反转初始速度
JY:
JBP1.1,TZ;
停止键按下到停止程序
JBP1.0,ZZ;
启动按钮到正传程序
JBP1.6,FPDJ;
反转的检测加速键按下到加速程序
JBP1.5,FPDJN;
减速键按下到减速程序
JBP1.4,ZPDJ;
正转的检验加速键按下到加速
JBP1.3,ZPDJN;
减速键按下到减速
JBP1.2,FZ;
反转键按下到反转程序
TZ:
LJMPSTART;
停止重新开始
ZPDJ:
CJNEA,#0F0H,JIA0;
正转的最大速度判断
LJMPJY;
已是最大不再加速回到检验
JIA0:
JNCJY;
超过最大不加速
ADDA,#05H;
加一定速度
电机速度增加
ZPDJN:
CJNEA,#080H,JIAN0;
正传最小速度判断
已是最小不再减速
JIAN0:
JCJY;
超过最小不减速
SUBBA,#05H;
减一定速度
电机速度减小
FPDJ:
CJNEA,#10H,JIA1;
反转的最大速度判断
已是最大不再加速
JIA1:
DPTR指针到电机控制口
FPDJN:
CJNEA,080H,JIAN1;
反转最小速度判断
JIAN1:
SUDUXIANSHI:
MOV76H,A;
将当前寄存器A中的内容给76H单元进行保存
MOVTMOD,#05H;
方式控制字T0设为计数器
MOVTH0,#00H;
计数初值为0
MOVTL0,#00H
SETBTR0;
开计数器
MOV55H,#4;
延时约1S
D01:
MOV56H,#250
D02:
MOV57H,#248
D03:
DJNZ57H,D03
DJNZ56H,D02
DJNZ55H,D01
CLRTR0;
1S到关计数器
MOVR1,TH0;
送数
MOVR0,TL0
MOV70H,R0
MOV71H,R1
START2:
MOVR4,#100;
显示次数
START02:
MOVSP,#40H;
堆栈指针
MOVA,70H;
计数得到的低4位数给A
MOVR0,#LEDBUF;
缓冲地址
ANLA,#0FH;
屏蔽高位,传送低位
MOVDPTR,#LEDMAP;
表地址
MOVCA,@A+DPTR;
数字转换成显示码
MOV@R0,A;
显示码填入显示缓冲
INCR0;
缓冲地址加1
ANLA,#0F0H;
屏蔽地位,传送高位
MOVA,71H;
计数得到的高4位给A
屏蔽高位,传送地位
屏蔽低位,传送高位
LJMPDISPLAYLED;
到显示程序
LEDMAP:
;
八段管显示码表格
DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB7FH,6FH,77H,7CH,39H,5EH,79H,71H
DISPLAYLED:
MOVR1,#4;
共4个八段管
MOVR2,#00000001B;
从右边开始显示
MOVDPTR,#OUTBIT;
位选
MOVA,#0
关所有八段管
LOOP:
MOVA,@R0
MOVDPTR,#OUTSEG;
段选
MOVX@DPTR,A
MOVDPTR,#OUTBIT
MOVA,R2
显示一位八段管
MOV4AH,#10
DL2:
MOV4BH,#200
DL1:
DJNZ4BH,DL1
DJNZ4AH,DL2
MOVA,R2;
显示下一位
RLA
MOVR2,A
INCR0
DJNZR1,LOOP
DJNZR4,START02
MOVA,76H
显示完成,跳回检验处
DELAY:
MOVR5,#12;
延时子程序约3S
D1:
MOVR6,#250
D2:
MOVR7,#248
D3:
DJNZR7,D3
DJNZR6,D2
DJNZR5,D1
RET
七、设计总结:
1、熟悉掌握了伟福单片机试验箱,对单片机汇编语言的编写,试验箱的操作有进一步的了解。
2、在学习实验的过程中,遇到了很多以前没遇到的问题。
1)在开始写程序的时候,没有或加错加主程序与子程序的地址,是程序没法执行。
2)有些情况下把语句写错如TMOD写成TOMD。
使程序无法运行。
3)八段管的位控制和段控制的地址开始不知道(OUTBITEQU08002H;
位控制口OUTSEGEQU08004H;
段控制口)
4)停止时的对应值、开始正转速度值、开始反转速度值以及增速减速时的差值,都很正确,这是比较好的一点。
5)检验增速、减速、正转、反转等指令很好,准确到位。
6)思维过程紧密,考虑的对象基本没有遗漏,从而使程序准确到位。
7)开始没有用霍尔元件测速,但是后来加上不会使,无法实现,后来加上计数器和定时器,而我们不会用定时器,只用计数器,后用调用实现霍尔元件测速。
8)在实验中遇到了,进到延时程序出不来的情况,有时是延时时间太长,有时是没有跳出延时的语句,无法运行。
9)还有八段管显示程序,做的比较好参照了单片机第16个实验的程序,实现了动态显示,每一位显示100次,一共显示4S。
10)但是在显示程序时用了RET没有跳出来,但不太了解原因,我们就用了跳转指令,实现了程序的运行。
11)我们到最后遇到了A和DPTR重复使用的情况,重复了好几次,上一个值被冲掉的情况。
我们通过给他们保存到地址空间中,实现了保护的作用。
八、参考文献:
[1]高峰.单片微型计算机原理与接口技术.科学出版社,2007
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 直流电机 智能化 控制 设计 论文