基于单片机直流电机调速

更新时间:2024-01-22 14:11:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

某某学 院

单片微机原理及应用课 程 设 计

题 目 基于单片机直流调速设计与制作 系 (部) 信息工程系 班 级 某

姓 名 某某某 学 号 12345678912 指导教师 老师 老师 老师

2012 年 1 月 4 日至 1 月 8 日 共 1 周

2012年 1 月 8 日

单片微机原理及应用课程设计任务书

一、设计题目、内容及要求 设计题目:基于单片机直流电机调速设计与制作 设计内容: (1)选择合理的电子器件设计出直流电机驱动电路,该直流电机工作电压为5V,功率为0.2W。 (2)设计并搭建遮断式光电开关驱动电路,利用光电开关测量直流电机的转速。 (3)通过4个数码管显示电机转速数据。 (4)利用单片机产生PWM波形控制直流电机转速,并且可以通过按钮控制电机加速、减速、正反转切换。 设计要求: 1、根据题目要求进行控制系统总体设计。 2. 完成系统硬件电路的设计。 (1)硬件电路图。 (2)硬件电路说明。 3. 系统程序的设计。 (1)程序流程图。 (2)完整源程序。 4.完成的控制系统能达到题目的要求。 5.书写设计说明书。 二、设计原始资料 张毅刚主编,单片机原理与应用设计,电子工业出版社。 三、要求的设计成果(课程设计说明书、设计实物、图纸等) 设计硬件电路能够正常工作,完成设计内容中要求功能。 设计说明书一份(总体设计、硬件电路、系统程序流程图、源程序清单等) 四、进程安排 周一:设计硬件电路 周二:焊接、调试硬件电路 周三:编程程序,进行软件调试 周四:撰写设计说明书 周五:答辩 五、主要参考资料 1、何立民主编,单片机中级教程,北京航空航天大学出版社 2、丁元杰主编,单片机原理与应用,机械工业出版社。 3、孙育才主编,MCS-51系列单片微型计算机及其应用,东南大学出版社 指导教师(签名): 教研室主任(签名):

课程设计成绩评定表

出勤 情况 成 绩 评 定 提问 (答辩) 问题 情况 出勤天数 缺勤天数 出勤情况及设计过程表现(20分) 课设答辩(20分) 设计成果(60分) 总成绩(100分) 综 合 评 定 指导教师签名: 年 月 日

目 录

1摘要 ...................................................................... 1 2总体方案选择 .............................................................. 2 2.1直流电机调速环节 ...................................................... 2 2.2直流电机速度测量环节 .................................................. 2 2.3直流电机速度显示环节 .................................................. 3 3各环节电路原理和数据程序分析 .............................................. 4 3.1直流电机调速环节 ...................................................... 4 3.1.1电路图及线路连接 ................................................... 4 3.1.2调压原理 ........................................................... 4 3.1.3调压环节程序流程 ................................................... 4 3.2直流电机速度测量环节 .................................................. 5 3.2.1电路图及线路连接 ................................................... 5 3.2.2测速原理 ........................................................... 6 3.2.3测速环节程序流程 ................................................... 6 3.3直流电机速度显示环节 .................................................. 7 3.3.1电路图及线路连接 ................................................... 7 3.3.2速度显示原理 ....................................................... 7 3.3.3显示环节程序流程 ................................................... 8 3.4数据计算 .............................................................. 8 4直流电机调速系统的总电路原理图 ............................................ 9 5直流电机调速系统的总程序流程图 ........................................... 10 6直流电机调速系统的总程序 ................................................. 11 7设计体会及总结 ........................................................... 16 8参考文献 ................................................................. 17

课程设计说明书

1摘要

在现代电子产品中,自动控制系统,电子仪器设备、家用电器、电子玩具等等方面,直流电机都得到了广泛的应用原因在于直流电机具有良好的启动性能和调速特性,它的特点是启动转矩大,最大转矩大,能在宽广的范围内平滑、经济地调速,转速控制容易,调速后效率很高。大家熟悉的录音机、电唱机、录相机、电子计算机等都不能缺少直流电机。

本次设计基于单片机的直流电机调速系统,采用通过改变施加于电机两端的电压大小的方法达到调节直流电机转速的目的。选用DAC0832式D/A转换器及通用型低功耗集成运放LM324结合输出适合控制直流电机的电压。为达到测速目的,使用栅格圆盘和光电门组成测速系统。当直流电机通过传动部分带动栅格圆盘旋转时,测速光电门获得一系列脉冲信号。这些脉冲信号通过单片机两个定时/计数器配合使用,一个计数,一个定时。计算出单位时间内的脉冲数,经过单位换算,就可以算得直流电机旋转的速度。而在速度显示系统中,先把计算得到的速度值的每一位分别取出,再运用74LS164串行输入并行输出移位寄存器通过查表逐步把各位要显示的数据移给数码管显示出来。这样,最终就可以对直流电机进行调速并测速显示了。

关键词:D/A转换调压调速 光电测速 74LS164移位显示

1

课程设计说明书

2总体方案选择

2.1直流电机调速环节

直流电动机的转速n和其他参量的关系可表示为

式中 Ua——电枢供电电压(V); Ia ——电枢电流(A); Ф——励磁磁通(Wb); Ra——电枢回路总电阻(Ω);

CE——电势系数,,p为电磁对数,a为电枢并联支路数,N为导体数。

由式1可以看出,式中Ua、Ra、Ф三个参量都可以成为变量,只要改变其中一个参量,就可以改变电动机的转速,所以直流电动机有三种基本调速方法:(1)改变电枢回路总电阻Ra;;(2)改变电枢供电电压Ua;(3)改变励磁磁通Ф。改变改变电机两端电压调速是直流电机调速系统中应用最广的一种调速方法。本设计就采用这种改变电机两端电压的调速方法,改变电压可以采用定时器产生占空比可调的PWM波或者数模转换产生。本设计选用DAC0832式D/A转换器及通用型低功耗集成运放LM324输出适合控制直流电机的电压。本设计调速系统分为调速、速度测量、速度显示环节。

2.2直流电机速度测量环节

速度测量主要有两种方法:

(1)光电测速法:使用栅格圆盘和光电门组成测速系统。当直流电机通过传动部分带动栅格圆盘旋转时,测速光电门获得一系列脉冲信号。这些脉冲信号通过单片机两个定时/计数器配合,一个计数,一个定时。计算出单位时间内的脉冲数m,经过单位换算,就可以算得直流电机旋转的速度。

直流电机转速计算公式:r=1000n/(T*N1*N) (rps) r为直流电机转速, N为栅格数, N1为T1中断次数,

T为定时器T1定时器溢出时间。

(2)霍尔效应原理测速法:工作原理:霍尔开关集成电路中的信号放大器将霍尔元件产生的幅值随磁场强度变化的霍尔电压UH放大后再经信号变换器、驱动器进行整形、放大后输出幅值相等、频率变化的方波信号。信号输出端每输出一个周期的方波,代表转过了一个齿。单位时间内输出的脉冲数N,因此可求出单位时间内的速度V=NT。本设计选用了光电测速的方法。

2

课程设计说明书

2.3直流电机速度显示环节

速度显示部分备选方案有两种:

(1)把计算得到的速度值的每一位分别取出,再运用74LS164串行输入并行输出移位寄存器通过查表逐步把各位要显示的数据移给数码管显示出来。

(2)用CS8279键盘显示模块部分。

本设计选用74LS164串行输入并行输出移位寄存器在数码管上显示速度值。 总之,本设计采用“D/A转换得到控制电压—光电测速电路测速—74LS164移位寄存器显示速度”的方案达到控制直流电机速度并测量速度到实时显示电机速度的设计目的。

3

课程设计说明书

3各环节电路原理和数据程序分析

3.1直流电机调速环节

本设计选用DAC0832式D/A转换器及通用型低功耗集成运放LM324输出适合

控制直流电机的电压。

3.1.1电路图及线路连接

运用DAC0832式D/A转换器及通用型低功耗集成运放LM324输出适合控制直流电机的电压的电路图见图3.1 的DAC0832并行数模转换电路部分。

线路连接:系统各跳线器处在初始状态,8P数据线将CPU模块的P11F3和P1F3连接,即单片机P0口与DAC0832的8位数据输入口相连接;用导线连接并行数模转换模

图3.1 DAC0832并行数模转换电路

块的CS_0832到地,CPU模块的/WR和D1区的/WR相连;并行数模转换模块的VOUT端口接入电动机电压输入口。

3.1.2调压原理

单片机P0口输出8位二进制数据,进入D/A转换器DAC0832的输入端口,通过对D/A转换器DAC0832的各控制端口的设置选通其直通方式工作,即每进入一个8位二进制数便可直接转化成模拟量,与通用型低功耗集成运放LM324共同作用产生电压输出。可以通过对单片机进行编程连续增加或者连续减小P0口输出的8位二进制数据大小而达到改变输出电压的目的,便可改变直流电机的转速。

3.1.3调压环节程序流程

4

课程设计说明书

图3.2 调压环节程序流程图

3.2直流电机速度测量环节

3.2.1电路图及线路连接

图3.3 直流电机电路

图3.4 光电测速电路

VCCR47A22012AKOptoisolatorVCCQ9AEC43R48A4.7K11U12AE1074LS14P11A PulseOut线路连接:光电测速电路的输出脉冲端口PulseOut接定时器0的外部输入端口P3.4。

5

课程设计说明书

3.2.2测速原理

光电测速法:使用栅格圆盘和光电门组成测速系统。当直流电机通过传动部分带动栅格圆盘旋转时,测速光电门获得一系列脉冲信号。这些脉冲信号通过单片机两个定时/计数器配合使用,一个计数,一个定时。计算出单位时间内的脉冲数m,经过单位换算,就可以算得直流电机旋转的速度。

直流电机转速计算公式:n=m/(N1·T·N)(rps)

其中:n为直流电机转速,N为栅格数,N1为T1中断次数,m为计数器T0在规定时间内测得的脉冲数,T为定时器T1定时器溢出时间。

3.2.3测速环节程序流程

开始 定时器计数器程序初始化 启动定时器T1及计数器T0 定时时间到,关闭定时器计数器 取出TL0中的速度值

结束 图3.5 测速环节流程图

6

课程设计说明书

3.3直流电机速度显示环节

3.3.1电路图及线路连接

图3.6 74LS164与数码管连接图

本设计中,用到四个串联使用的74LS164串行输入并行输出移位寄存器,每个74LS164的输出引脚接一个共阴极数码管。单片机的P1.4口接第一个74LS164串行输入并行输出移位寄存器的串行数据线DIN口,用来从单片机向数码管输送要显示的速度数据;P1.5接移位信号CLK端口,用来产生上升沿,以触发74LS164串行输入并行输出移位寄存器工作。

3.3.2速度显示原理

静态数码管显示电路由四只74LS164、四只共阴极数码管组成。输入有两个信号:串行数据线DIN和移位信号CLK。74LS164首尾相连,并行输出LED数码管的段码。把计算得到的速度值每一位取出,用74LS164通过查表把各位要显示的数据移给数码管显示出来。

7

课程设计说明书

3.3.3显示环节程序流程

开始 速度值各位分开 传送个位数到74LS164 传送十位数到74LS164 传送0到74LS164 传送P到74LS164 显示 结束 图3.7 显示环节流程图

3.4数据计算

定时器1定时27.7ms,赋初值TH1为93H,TL1为0CCH,循环3次,共计时83.1ms,这个时间里计数器T0计得n个脉冲。则转速为1000n/(27.7*3*12)=n r/s.

8

SRG8R8C1/->31Dc74c65c56c140c131c122c113b113a113b122a122b131a131b140a140b56a56b65a65b74a7431D31DC1/->C1/->8889RRR999C1/->SRG8SRG8SRG81D

&12

&12

&123&12Q46Q55Q64Q310Q211Q112Q013U8a1a2a3a4a5a6U5U2U374LS16474LS16474LS16474LS164Q6Q5Q4Q3Q2Q1Q0a7c7c6c5c4c3c2c1b1b2b3b4b5b6b7课程设计说明书

4直流电机调速系统的总电路原理图

图4.1 总电路图

9

1716151413121110P3.7/RDP3.6/WRP3.5/T1P3.4/T0P3.3/INT1P3.2/INT0P3.1/TXDP3.0/RXD1112131415161718192010uC1P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.087654321EAALEPSEN313029U6DAC0832112827262524232221P2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A88R2R12134LM324IOUT1GNDIOUT2RFBDI7VREFDI6DI0DI5DI1DI4DI2XFERDI3WR2GNDILE(BY1/BY2)WR1VCCCS10987654321RST910uC2U7:A3233343536373839XTAL218X1P0.7/AD7P0.6/AD6P0.5/AD5P0.4/AD4P0.3/AD3P0.2/AD2P0.1/AD1P0.0/AD0CRYSTALXTAL119U110uC3AT89C51+88.8 课程设计说明书

5直流电机调速系统的总程序流程图

图5 总流程图

10

课程设计说明书

6直流电机调速系统的总程序

ORG 0000H

JMP MAIN ORG 001BH JMP dingshi ORG 0200H MAIN:

MOV SP,#60H

SETB P3.4 ; P3.4 MOV TMOD,#15H ; MOV TH0,#00H ; MOV TL0,#00H

MOV TH1,#0A7H ; MOV TL1,#54H

MOV IE,#88H ; MOV r4,#3 ; SETB TR0 ; SETB TR1 ; SJMP $ dingshi:

djnz r4,mm ; 顺序执行,停止计时和计数 CLR TR0 ; CLR TR1

MOV A,TL0 ;

MOV B ,#100 DIV AB

MOV R0,A ; MOV A,#10 XCH A,B

DIV AB ; XCH A,B ;

MOV DPTR,#0100H ;

口写1,允许输入脉冲

设置定时器T1工作方式1,计数器T0工作方式1 计数器赋初值0 定时器定时27.7ms赋初值 定时器中断允许

设置定时27.7ms的循环次数 开计数器 开定时器 不到83.1ms转到mm,重新赋初值循环,到则到83.1ms停止计时和计数 把83.1ms的脉冲数送到A中 百位数送入R0 十位数送入A,个位数送入B 个位数送入A,十位数送入B 设置表格地址 11

课程设计说明书

MOVC A,@A+DPTR MOV R2,#8

LOOP: ; 传送个位数 RLC A

MOV P1.4,C ; 用p1.4传输进164

CLR P1.5 ; 用p1.5口得到上升沿,触发164 SETB P1.5 DJNZ R2,LOOP

MOV A,B ; MOVC A,@A+DPTR MOV R2,#8

LOOP1: ; RLC A MOV P1.4,C CLR P1.5 SETB P1.5 DJNZ R2,LOOP1 MOV A,R0 MOVC A,@A+DPTR MOV R2,#8

LOOP2: ; RLC A

MOV P1.4,C ; CLR P1.5 ; SETB P1.5 DJNZ R2,LOOP2

MOV A,#00H MOVC A,@A+DPTR MOV R2,#8

LOOP3: ; RLC A

MOV P1.4,C ; CLR P1.5 ; SETB P1.5 DJNZ R2,LOOP3

十位数送入A 传送十位数 传送百位数 用p1.4传输进164

用p1.5口得到上升沿,触发164 传送最高位0 用p1.4传输进164

用p1.5口得到上升沿,触发164 12

课程设计说明书

LCALL DELAY ;-----检测按键------ saomiaoanjian:

MOV A,50H ; 把50H单元寄存的内容回送给A MOV DPTR,#7fffh ; 选中DAC0832 CLR P1.2

JB P1.2,START ; p1.2接启动键,以某一较高速度启动 SETB P1.3

JB P1.3,CUT ; p1.3 CLR P1.0

JB P1.0,UP ; p1.0 CLR P1.1

JB P1.1,DOWN ; p1.1 JMP AAA

mm:MOV TH1,#0A7H ; MOV TL1,#54H

RETI ; ;-----启动---------- START:MOV A,#07FH MOVX @DPTR,A LCALL DELAY JMP AAA

;-----停止---------- CUT: MOV A,#00H MOVX @DPTR,A LCALL delay JMP AAA DELAY:MOV R5,#20 D2:MOV R6,#50 D3:MOV R7,#250 D4:NOP NOP DJNZ R7,D4 DJNZ R6,D3 DJNZ R5,D2 RET

;-----加速----------

接停止键 接加速键,若按下则转up加速 接减速键,若按下则转down减速 定时器定时27.7ms赋初值 不到416ms,中断返回,继续循环 13

课程设计说明书

UP: ; 每次按键增加0.1V CJNE A,#0FFH,AA

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY JMP AAA AA:INC A CJNE A,#0FFH,BB

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY JMP AAA BB:INC A CJNE A,#0FFH,CC

MOVX @DPTR,A ; LCALL DELAY JMP AAA CC:INC A CJNE A,#0FFH,DD

MOVX @DPTR,A ; LCALL DELAY JMP AAA DD:INC A CJNE A,#0FFH,EE

MOVX @DPTR,A ; LCALL DELAY JMP AAA EE:INC A

MOVX @DPTR,A ; LCALL DELAY JMP AAA

;-----减速----------

DOWN: ; CJNE A,#00H,FF

MOVX @DPTR,A ; LCALL DELAY JMP AAA FF:DEC A DEC A

向DAC0832输数据 向DAC0832输数据 向DAC0832输数据 向DAC0832输数据 每次按键减小0.1V 向DAC0832输数据 14

课程设计说明书

CJNE A,#00H,HH

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY JMP AAA HH:DEC A CJNE A,#00H,JJ

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY JMP AAA JJ:DEC A CJNE A,#00H,KK

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY JMP AAA KK:DEC A

MOVX @DPTR,A ; 向DAC0832输数据 LCALL DELAY AAA:

LCALL DELAY

MOV 50H, A ; 把A的内容寄存给50H单元

MOV r4,#3 ; 设置定时26ms的次数,共得到416ms MOV TH0,#00H ; 计数器赋初值0 MOV TL0,#00H

MOV TH1,#0A7H ; 定时器定时27.7ms赋初值 MOV TL1,#54H

SETB TR0 ; 开计数器 SETB TR1 ; 开定时器

RETI ; 到416ms,中断返回,继续测速 ORG 0100H

DMB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,73H END

15

课程设计说明书

7设计体会及总结

这次课程设计是一次非常好的锻炼机会,通过这五天的学习,发现了自己的很多不足,自己知识的不怎么牢固,看到了自己的实践经验更是比较缺乏,理论联系实际的能力还急需提高进一步加深了对单片机的了解,让我对它有了更加浓厚的兴趣。通过这次课程设计使我懂得了理论与实际相结合是很重要的在解决这些问题的时候,我不断向老师和同学请教,希望能通过大家一块的努力,让系统的功能更完备。经过几天的努力探索,也经过老师的指导,大部分问题都已经解决,后来经过一点一点的调试,并认真总结,修改后实现了直流电机调速的目的

课设过程中有些问题给我留下深刻印象,连接线后,要检查系统各跳线器是否处在初始设置状态,以保证硬件的可操作性。在编写程序时,会出现各种错误,例:(1)target out of range:这种情况是程序繁琐冗长使跳转超出范围,主要有jb jc jnb jnc jbc sjmp djnz acall jz jnz cjne等跳转指令超出跳转的范围,一般可以增加分支或改用长跳转指令LJMP,LCALL等解决。(2)SJMP $指令不可在定时器中断中乱用,要严格按照程序顺序执行才可以正确使用。程序必须反复写-修改-使用,还要学会熟练使用单步调试修改程序。这样,只有硬件与软件相匹配好后,才能达到试验功能成功。

16

课程设计说明书

8参考文献

【1】马建国、孟宪元,《电子设计自动化技术基础》 【2】姜威,实用电子系统设计基础》. 2008年1月

【3】张靖武,《单片机系统的PROTEUS设计与仿真》. 2007年4月

17

本文来源:https://www.bwwdw.com/article/14go.html

Top