1、单片机课程设计第 - 0 - 页 共 14 页 微机原理及应用课 程 设 计题 目: 直流电机控制 专 业: 数控技术 班 级: 姓 名: 学号: 成 绩: 年 月 日 单片机课程设计第 - 1 - 页 共 14 页 目 录第一章 概述 1第 2 章 直流电机硬件电路设计及描述 22.1 直流电机的结构 22.2 直流电机的工作原理 22.3 电磁关系 22.4 直流电机主要技术参数 22.5 直流电机的类型 32.6 直流电机的特点 3第三章 软件设计流程 33.1 程序设计流程图 33.2 总电路功能介绍 43.3 直流电机转速 43.4 电机驱动模块的电路设计 4第 4 章 源程序 6第
2、 5 章 总 结12参考文献12单片机课程设计第 - 2 - 页 共 14 页 第一章 概述直流电机就是将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。为了推广直流电机在化工领域的使用,由于直流电机的功能已得到很大提 高,因此更为人性化的设计
3、势必在操作和显示方面。直流电机直流电动机调速控 制一般采用模拟法,对电动机的简单控制应用比较多。简单控制是指对电动机进 行启动,制动,正反转控制和顺序控制。这类控制容易实现,并可通单片机,直 流电机驱动芯片和开关元件来实现,所以本课题采用此法。同时考虑到以前的直 流电机只能通过数码管来进行简单地显示转速,且不能清楚的了解其转向,而 LCD 液晶显示器可以弥补这一点,并且还添加一些更为人性化的提示,这是以 前的数码管所不能代替的,这必将是一个新的趋势。直流电机的主要功能非常广泛,例如:军事 和宇航方面的雷达天线,火炮瞄准,惯性导航,卫星姿态,飞船光电池对太阳得 跟踪等控制;工业方面的各种加工中心
4、,专用加工设备,数控机床,工业机器人,塑料机械,印刷机械,绕线机,纺织机械,工业缝纫机,泵和压缩机等设备的控制;计算机外围设备和办公设备中的各种磁盘驱动器,各种光盘驱动器,绘图仪,扫描仪,打印机,传真机,复印机等设备的控制;音像设备和家用电器中的录音机,录像机,数码相机,洗衣机,冰箱,电扇等的控制。单片机课程设计第 - 3 - 页 共 14 页 NSNSUUNSNSEE第二章 直流电机硬件电路设计及描述2.1 直流电机的结构直流电机由定子和转子两部分组成。在定子上装有磁极(电磁式直流电机磁极由绕在定子上的磁绕提供),其转子由硅钢片叠压而成,转子外圆有槽,槽内嵌有电枢绕组,绕组通过换向器和电刷引
5、出。2.2 直流电机的工作原理直流电机电路模型,磁极 N、S 间装着一个可以转动的铁磁圆柱体,圆柱体的表面上固定着一个线圈。当线圈中流过电流时,线圈受到电磁力作用,从而产生旋转。根据左手定则可知,当流过线圈中电流改变方向时,线圈的受方向也将改变,因此通过改变线圈电路的方向实现改变电机的方向。2.3 电磁关系2.4 直流电机主要技术参数直流电流交流电流电磁转矩(拖动转矩)反电动势机械负载比较器单片机课程设计第 - 4 - 页 共 14 页 直流电机的主要额定值有:额定功率 Pn:在额定电流和电压下,电机的负载能力。额定电压 Ue:长期运行的最高电压。 额定电流 Ie:长期运行的最大电流。额定转速
6、 n:单位时间内的电机转动快慢。以 r/min 为单位。 励磁电流 If:施加到电极线圈上的电流。2.5 直流电机的类型直流电机可按其结构、工作原理和用途等进行分类,其中根据直流电机的用途可分为以下几种:直流发电机(将机械能转化为直流电能)、直流电动机(将直流电能转化为机械能)、直流测速发电机(将机械信号转换为电信号)、直流伺服电动机(将控制信号转换为机械信号)。下面以直流电动机作为研究对象。2.6 直流电机的特点通过电刷间的电流与导体电流的性质不同;通过电刷电流为直流电流,导体电流为交变电流;电枢电势与电流反方向,称为反电势。电磁转矩的方向与电机的转向相同,为驱动转矩。作为电动机运行:在直流
7、电机的两电刷端上加上直流电压,电枢旋转,拖动生产机械旋转,输出机械能;作为发动机运行:用原动机拖动直流电机的电枢,电刷端引出直流电动势,作为直流电源,输出电能。第三章 软件设计流程3.1 程序设计流程图 定 时 中 断 服 务设 置 一 定 的 周 期 0F0H将 从 键 盘 (中 断 )读 取 的 数 据 送 到 TH0中 ,从 而 设 置 脉 宽通 过 定 时 中 断 不 停 给 电 机 驱 动 芯 片 输 出 脉 冲 初 始 设 置 RETI定时中断服务流程图单片机课程设计第 - 5 - 页 共 14 页 ra Ea n T0 2 I U T1 Rc 说 明 : U 电 压 Ea 电 枢
8、 电 动 势n 转 速 I电 枢 电 流 ra 电 枢 回 路 电 阻 Rc外 在 电 枢 电 阻 T1, 2负 载 转 矩 0 空 载 转 矩 磁 通 量 ABABIN2IN1ENAD11N406 D21N406D31N406 D41N406Q12SK1058Q22SK1058Q32SK1058Q42SK1058R11K V1+9V2 31U17412631U274126直 流 电 机 驱 动 电 路直 流 电 机+8.83.2 总电路功能介绍直流电机 PWM 调制控制系统具有加速、减速、正转、反转、停止控制功能。操作开关通过中断控制直流电机的加速、减速、正转、反转、停止控制功能,并通过 L
9、CD 液晶显示。振荡、时钟电路和复位电路由80C51 单片机内部给出。直流电机转动速度由 LCD 液晶显示。操作开关状态由液晶显示器显示。3.3 直流电机转速直流电机的数学模型可用下图表示,由图可见电机的电枢电动势 Ea 的正方向与电枢电流 Ia 的方向相反,Ea 为反电动势;电磁转矩 T 的正方向与转速 n 的方向相同,是拖动转矩;轴上的机械负载转矩 T2 及空载转矩 T0 均与 n 相反,是制动转矩。直流电机的数学模型根据基尔霍夫第二定律,得到电枢电压电动势平衡方程式 1.1:U=Ea-Ia(Ra+Rc)式 1.1 中,Ra 为电枢回路电阻,电枢回路串联保绕阻与电刷接触电阻的总和;Rc 是
10、外接在电枢回路中的调节电阻。由此可得到直流电机的转速公式为: n =Ua-IR/Ce 式 1.2 中,Ce 为电动势常数, 是磁通量。由 1.1 式和 1.2 式得n =Ea/Ce 由式 1.3 中可以看出,对于一个已经制造好的电机,当励磁电压和负载转矩恒定时,它的转速由回在电枢两端的电压 Ea 决定,电枢电压越高,电机转速就越快,电枢电压降低到 0V 时,电机就停止转动;改变电枢电压的极性,电机就反转。3.4 电机驱动模块的电路设计根据直流电机的工作原理,选取元器件如下,放置元器件、放置电源和地连线,我们参此设计的直流电机驱动模块电路如图所示 2SK1058 : CMOSS 管 74L26
11、: 三太门 1N4006 : 二极管 VSCOURCE : 电源 MOTOR-ENCODER : 直流电机 RES : 电阻 AT89C51 : 单片机 (在此并未显示)单片机课程设计第 - 6 - 页 共 14 页 开 始对 LCD进 行 一 些 初 始 化 操 作将 已 知 要 提 示 的 内 容 送 入 LCD中 并 使 其 显 示 在 第 一 行判 断 设 置 电 机 的 速 度 是 否 为 0, 若 是 , 一 直 等 待将 从 键 盘 读 取 的 速 度 和 转 向 送 入 LCD中 并 使 其 在 第 二 行 显 示判 断 是 否 有 命 令 输 入 , 若 没 , 一 直 等
12、待LJMP 主 程 序直流电机驱动电路然而考虑市场的行情,既然已有专门地为电机驱动而设计的芯片,就没必要再从新来设计;选用 L298芯片来构成的电路结构基本上跟上图一样。所用元器件如下所示: 1N4006 : 二极管 AT89C51 : 单片机 (在此并未显示) RES : 电阻 MOTOR-ENCODER : 直流电机 L298 : 电机驱动芯片 RESPACK-8: 排阻显示程序流程图单片机课程设计第 - 7 - 页 共 14 页 第四章 源程序ORG 0000HSJMP DISPLAYORG 0003H LJMP BUTTON ; 外部 0 中断入口地址ORG 000BHLJMP DIN
13、GSHI ; 定时中断 T0 入口地址RS EQU P3.0RW EQU P3.1E EQU P3.4ORG 0030H ; 此次直流电机的设计以 LCD 字符夜晶的; 显示程序为主程序DISPLAY: SETB EA ; 打开中断总开关SETB EX0 ; 打开外部中断 0 开关SETB IT0 ; 打开外部中断 0 下降沿触发MOV TMOD,#01H ; 设置定时工作方式MOV TL0,#0FFH ; 设置定时初值MOV TH0,#0FFHSETB ET0 ; 打开定时中断 T0 开关 CLR P0.5 CLR P0.6CLR P0.7SETB TR0 ; 定时器 T0 开始定时MOV
14、DPTR,#TAB ; 夜晶显示的字符首地址 MOV R0,#00H ; 脉宽的初值MOV R1,#16 ; “SET SPEED PLEASE“的字符个数MOV R3,#00HMOV R4,#00HLP9: LCALL CHUSHILP2:ACALL BUSYMOV A,#00HMOVC A,A+DPTRMOV P1,AACALL DATASINC DPTR DJNZ R1,LP2 LP3: CJNE R3,#00H,LP4单片机课程设计第 - 8 - 页 共 14 页 CJNE R4,#00H,LP4SJMP LP3LP4: MOV R7,#00H ; 中断的标志 MOV R5,#09H
15、; CURRENT : 的字符个数ACALL BUSYMOV P1,#0C0HACALL ENABLEMOV DPTR,#MMTABACALL BUSYLP5: MOV A,#00HMOVC A,A+DPTRMOV P1,AINC DPTRACALL DATASACALL BUSYDJNZ R5,LP5 MOV DPTR,#STABMOV A,R2MOV P1,AACALL DATASACALL BUSYMOV A,R3 ; 显示速度的十位MOVC A,A+DPTRMOV P1,AACALL DATASACALL BUSYMOV A,R4 ; 显示速度的个位MOVC A,A+DPTRMOV P
16、1,A ACALL DATAS ; 使夜晶始终显示当前电机的速度LP8: CJNE R7,#00H,LP7 ; 速度不变时等待LJMP LP8 ; 速度变时重新读入速度LP7:SJMP LP4单片机课程设计第 - 9 - 页 共 14 页 CHUSHI: ; 使夜晶显示的一些初始设置ACALL BUSY MOV P1,#00000001B ; 清屏并光标复位ACALL ENABLE ACALL BUSY MOV P1,#00111000B ; 设置显示模式:8 位 2 行 5x7 点阵ACALL ENABLEACALL BUSY MOV P1,#00001111B ; 显示器开、光标开、光标允
17、许闪烁ACALL ENABLEACALL BUSYMOV P1,#00000110B ; 文字不动,光标自动右移ACALL ENABLEACALL BUSYMOV P1,#80H ; 写入显示起始地址ACALL ENABLE RETENABLE: ; 写入控制命令的子程序SETB ECLR RSCLR RWCLR ERETDATAS: ; 写入数据子程序SETB ESETB RSCLR RWCLR ERETBUSY: ; 准备写入数据CLR EMOV P1,#0FFHCLR RSSETB RWSETB EJB P1.7,BUSYRETORG 2000HDINGSHI: ; 定时中断服务程序单片
18、机课程设计第 - 10 - 页 共 14 页 CPL P0.7 JNB P0.7,Z1 ; 周期一定MOV A,#0FFHSUBB A,R0 MOV TH0,ASETB TR0RETIZ1: MOV TH0,R0 ; 脉宽SETB TR0RETIBUTTON: ; 从控制键盘中读取操作命令PUSH ACC CLR EX0CLR EAINC R7 ;MOV A,#0FFHMOV P2,AMOV A,P2JNB ACC.0,AA0 JNB ACC.1,KK0JNB ACC.2,ZZJNB ACC.3,FFJNB ACC.4,WW0AJMP QQAA0: CJNE R0,#0FFH, AA1 ; 加
19、速操作AJMP QQ AA1: MOV A,R0ADD A,#5MOV R0,AAJMP QQKK0: CJNE R0,#00,MM ; 减速操作AJMP QQ MM: MOV A,R0SUBB A,#5MOV R0,AAJMP QQ单片机课程设计第 - 11 - 页 共 14 页 QQ: MOV A,R0 MOV B,#5 DIV ABMOV B,#10DIV ABMOV R3,AMOV R4,BSETB EX0LCALL DELAYLCALL DELAYLCALL DELAYLCALL DELAYSETB EAPOP ACCRETIZZ: SETB P0.5 ; 正转操作CLR P0.6
20、MOV R2,#2BH ; 正转标志 “+“LCALL DELAYLCALL DELAYLCALL DELAYSETB EX0SETB EA POP ACCRETIFF: CLR P0.5 ; 反转操作 SETB P0.6 MOV R2,#2DH ; 反转标志 “-“LCALL DELAYLCALL DELAYLCALL DELAYSETB EX0SETB EAPOP ACCRETIWW0: CLR P0.5 ; 停止操作CLR P0.6LCALL DELAYLCALL DELAYLCALL DELAYSETB EX0单片机课程设计第 - 12 - 页 共 14 页 加 速减 速正 转反 转停
21、 止减 速正 转 正 转反 转停 止加 速加 速减 速反 转停 止IN15I27ENA6 OUT12OUT23B1 OUT313OUT414IN310I412SENSA1 B15 GND8VS4VC9 U2L298+12VR410R510R610-91.2XTAL218XTAL119ALE3031PSN29RST9P0./AD0390.1/138P0.2/AD2370.3/336P0.4/AD4350.5/534P0.6/AD630.7/732P1.011.2P1.231.34P1.451.56P1.671.78P3.0/RXD103.1/T 1P3.2/IN0123./IT113P3.4/0
22、14P3.7/RD173.6/W163.5/T115P2.7/A1528P2.0/A8212.1/92P2./A10232.3/124P2.4/A12252.5/13262.6/1427U1AT89C51 U?AND_523456789 1RP1ESPACK-8 +12VD11N403 D31N403D21N403D41N403SETB EA POP ACCRETIDELAY: ; 延时子程序MOV R5,#0E0HMM0: MOV R6,#30H MM1: DJNZ R6,MM1DJNZ R5,MM0RETTAB: DB 53H,45H,54H,20H DB 53H,50H,45H,45H
23、; “SET SPEED PLEASE“ 代码DB 44H,20H,50H,4CHDB 45H,41H,53H,45H STAB: DB 30H,31H,32H,33HDB 34H,35H,36H,37H ; “0,1,2,3,4,5,6,7“ 代码DB 38H,39H,41H,42H ; “8,9,A,B,C,D,E,F“DB 43H,44H,45H,46HMMTAB: DB 43H,4FH,52H,52HDB 45H,4EH,54H,20H ; “ CURRENT : “ 代码DB 3AHEND原理图系统仿真单片机课程设计第 - 13 - 页 共 14 页 第五章 总 结这次课程设计是一次
24、非常好的锻炼机会,历时一个星期左右,通过这一个星期的学习,发现了自己的很多不足,自己知识的不怎么牢固,看到了自己的实践经验更是比较缺乏,理论联系实际的能力还急需提高。课程设计是培养学我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程. 此次拔河游戏机课程设计,我仍体会颇深。从中学到很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能
25、力和独立思考的能力。在设计的过程中,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的很多的不足,自己知识的很多漏洞,对以前所学过的知识理解得不够深刻,掌握得不够牢固。虽然这只是一次的较简单的课程设计,可是也耗费了我们不少的心血。无论如何,就当它是一次数电的复习课吧!同时也作了一次很好的复习!感激学校让我有这次学习设计的机会,让我受益匪浅,这次学习对于我们没有真正实践经验的同学来说,绝对是一次成长的机会。参考文献1 单片微型计算机与接口技术,李群芳、黄建编著,电子工业出版社;2 单片机原理及应用,张毅刚编著,高等教育出版社;3 51 系列单片机及 C51 程序设计,王建校,杨建国等编著,科学出版社;4 单片机原理及接口技术,李朝青编著,北京航空航天大学出版社