《单片机控制三相异步电动机正反转(30页).doc》由会员分享,可在线阅读,更多相关《单片机控制三相异步电动机正反转(30页).doc(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-摘 要我的这次毕业设计论文主要介绍了三相异步电动机的发展史,及国内的现状和单片机远距离控制三相异步电动机未来的应用前景。并且阐述了三相异步电动机正转、反转、停止的控制原理,如何用红外遥控设备实现电动机的正转、反转、停止三种状态的切换。还阐述了单片机远距离控制三相异步电动机的设计方案,并绘制了原理图和PCB板图,撰写了程序源代码。实现了对三相异步电动机正转、反转、停止的控制。这期间主要使用protel99se软件绘制原理图和制板,使用proteus7.1软件进行程序代码的仿真和功能的理论验证。最后通过硬件的调试验证程序代码的实际功能,完成对单片机远距离控制三相异步电动机的设计。关键词红外遥控设
2、备、单片机;三相异步电动机电机、控制器。 目 录摘要第一章、引言1第二章、三相异步电机控制系统2第三章、 AT89C52 单片机4第四章、红外遥控器设计6第五章、三相异步电动机原理与控制8第六章、实现 11第七章、结构图30结论31参考文献32致谢33附录34第一章、引 言1.1三相异步电动机发展史在国外,费拉里斯和特斯拉发明多相交流系统后,19世纪80年代中期,多沃罗沃尔斯基发明了三相异步电动机。并在后来得到了广泛的应用。三相异步电动机是交流电动机的一种,又称感应电机。具有结构简单,制造容易,坚固耐用,维修方便,成本低廉等一系列优点。因其具有较高的效率及接近于恒速的负载特性,故能满足绝大多部
3、分工农业生产机械的拖动要求,从而成为各类电机中产量最大,运用最广的一种电动机。1.2我国三相异步电动机发展我国电动机的研究及制造起始于本世纪50年代后期。从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用或开发少量产品。这些产品以多段结构三相异步电动机为主。70年代初期,电动机的生产和研究有所突破。除反映在驱动器设计方面的长足进步外,对电动机本体的设计研究发展到一个较高水平。70年代中期至80年代中期为成品发展阶段,新品种高性能电动机不断被开发。80年代后三相异步电动机已经得到广泛的应用。13单片机远距离控制三相异步电动机的应用前景目前,随着电子技术、控制技术以及电动机
4、本体的发展和变化,单片机远距离控制三相异步电动机系统已经受到广泛的应用。因为在很多工业生产中,很多工厂的环境很差,工人在现场工作,很容易患各种职业病,不管是对工厂还是对工人都是很大的损失。因此,随着社会的需要,机械设备的远程控制的出现对工厂的生产起到了很大的帮助。提高了社会生产力,对未来的社会发展有很深远的意义。因此,单片机远距离控制三相异步电动机的发展前景非常广。 -第 30 页-第二章、三相异步电机控制系统2. 1三相异步电动机系统框图 AT89S52脉冲发生模块电流放大模块LED显示模块三相异步电机键盘输入模块22 控制单元控制单元 、驱动电路为控制系统的核心部分。控制单元是整个系统最核
5、心的部分,是系统的指挥中心。用于协调各部分的运行,主要负责接收通信端口或输入电路送来的信息,并对其进行识别,译码,并做出相应的动作,发出控制信号用以控制步进电动机。控制单元实质上是具有处理能力的微处理器芯片。控制单元可以由:单片机、DSP、PLC等充当。本文选用由ATEML公司生产的AT89C52单片机。23驱动电路 驱动电路是负责将控制单元送来的微电流信号进行放大用以驱动三相异步电动机运转,驱动电路实质上是功率放大器。 常见的驱动电路:单电压型功放电路、高低压切换型功放电路、斩波恒流功放电路等再就是采用专用的集成芯片。本文采用L297/L298芯片,由这两种芯片构成的驱动电路具有控制方便、精
6、度高、并且不需要外围扩展。24通信端口 通信端口是三相异步电机控制器与上位机(主要是指计算机)进行通信的接口,PC机串口采用的通信标准RS-232标准。使用单片机的USART端口与计算机的串口(9芯)相连进行通信。25其它显示屏:人机交互的窗口,使用LED显示器。输入电路:用于输入控制信息,告诉控制器如何运转第三章、AT89C52单片机3.1 MCS-51 单片机硬件结构虽然单片机在形态上只是一块芯片,但它已具有了微型计算机的组成结构和功能。在MCS-51单片机中除了有CPU、存储器和并行输入/输出接口外,还包含由定时器/计数器、串行I/O 接口和中断管理逻辑等部件。3.2 MCS-51 单片
7、机的基本组成MCS-51单片机是由8 位CPU、存储器、串并行I/O口、定时器/计数器、中断系统、振荡器和时钟系统等组成,各部分之间通过系统总线相连。如图1.1 所示为MCS-51 单片机的系统功能模块框图。(点击查看大图)图 1.1 MCS-51单片机的系统功能模块框图3.3 AT89S52 单片机的引脚图及各引脚功能说明AT89S52 是Atmel公司生产的一种低功耗、高性能CMOS 8位微控制器,具有8 位在系统可编程Flash存储器。AT89S52 使用Atme公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash 允许程序存储器在系统可编程,也适于
8、常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52 具有PDIP、PLCC、TQFP3 种封装形式以适用于不同的使用场合。各封装引脚定义如图1.2所示。图 1.2 AT89S52引脚图下面简单介绍AT89S52 各引脚的功能:VCC:电源。GND:地。P0 口:P0 口是一个8 位漏极开路的双向I/O 口。作为输出口,每位能驱动8 个TTL逻辑电平。对P0 端口写“1”时,引脚用做高阻抗输入。当访问外部程序和数据存储器时,P0 口也被作为低8 位地址/数据复用。在这种模式下,P0 具
9、有内部上拉电阻。在Flash编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节。在程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TT逻辑电平。当对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0 和P1.2 分别作为定时器/计数器2 的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体如表1-1 所示。在Flash编程和校验时,P1口接收低8 位地址字节。P2
10、口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TT逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问表1-1 P1口部分管脚的第二功能外部程序存储器或用16 位地址读取外部数据存储器(如执行MOVX DPTR)时,P2 口送出高8 位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8 位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在Flash编程和校验时,P2 口也接收高8位地址字节和一些控制信号。P
11、3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TT逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3 口也作为AT89S52 特殊功能(第二功能)使用,如表1-2所示。在Flash编程和校验时,P3口也接收一些控制信号。表1-2 P3口部分管脚的第二功能RST: 复位输入。在晶振工作时,RST脚持续两个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO 位
12、可以使此功能无效。在DISRTO 默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号(ALE)在访问外部程序存储器时,锁存低8 位地址的输出脉冲。在Flash编程时,此引脚(PROG)也用做编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE 脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0 位置“1”,ALE 操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0 位)的设置
13、对微控制器处于外部执行模式下无效。PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN 在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH 的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在Flash编程期间,EA也接收12伏VPP电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。3.4 MCS-51 单片机的复位复位是单片机的初始化工作,其
14、作用是使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51 的RST 引脚是复位信号的输入端,高电平有效,持续时间要在24 个时钟周期以上。单片机复位后,其内部各寄存器的状态如表1-3 所示。表1-3 复位后片内各专用寄存器的值复位期间,片内RAM 的状态不受复位的影响;复位后,PC的值为0000H,所以单片机总是从起始地址0000H 处开始执行程序。当单片机运行出错或进入死循环时可按复位键重新启动。第四章 单片机红外遥控器设计4.1 红外线遥控的概念 红外线遥控是目前使用很广泛的一种通信和遥控技术。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,
15、因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可*而且能有效地隔离电气干扰。红外线是太阳光线中众多不可见光线中的一种,由德国科学家霍胥尔于1800年发现,又称为红外热辐射,他将太阳光用三棱镜分解开,在各种不同颜色的色带位置上放置了温度计,试图测量各种颜色的光的加热效应。结果发现,位于红光外侧的那支温度计升温最快。因此得到结论:太阳光谱中,红光的外侧必定存在看不见的光线,这就是红外线。也可以当作传输之媒界。 太阳光谱上红外线的波长大于可见光线,波长为0.751000m。
16、红外线可分为三部分,即近红外线,波长为0.751.50m之间;中红外线,波长为1.506.0m之间;远红外线,波长为6.0l000m 之间。 真正的红外线夜视仪是光电倍增管成像,与望远镜原理全完不同,白天不能使用,价格昂贵且需电源才能工作4.2 红外遥控系统 通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。图1a红外发射原理图图1b 红外接受原理图4.3 遥控发射器及其编码 红外遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广
17、泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示。上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3所示,连发波形如图4所示。UPD6121
18、G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。当遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在4563ms之间,图4为发射波形图。当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms18
19、ms),高8位地址码(9ms18ms),8位数据码(9ms18ms)和这8位数据的反码(9ms18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。 代码格式(以接收代码为准,接收代码与发射代码反向) 位定义 单发代码格式 连发代码格式 注:代码宽度算法:16位地址码的最短宽度:1.1216=18ms 16位地址码的最长宽度:2.24ms16=36ms 已知8位数据代码及其8位反代码的宽度和不变:(1.12ms+2.24ms)8=27ms 32位代码的宽度为(18ms+27ms)(36ms+27ms) 1 解码的关键是如
20、何识别“0”和“1”,从位的定义我们可以发现“0”、“1”均以0.56ms的低电平开始,不同的是高电平的宽度不同,“0”为0.56ms,“1”为1.68ms,所以必须根据高电平的宽度区别“0”和“1”。如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为“0”,反之则为“1”,为了可*起见,延时必须比0.56ms长些,但又不能超过1.12ms,否则如果该位为“0”,读到的已是下一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms最为可*,一般取0.84ms左右均可。2 根据码的格式,应该等待9ms的起始码和4.5ms的结果码完成后才能读码。4.
21、4 红外遥控解码实验硬件 一体化红外线接收器是一种集红外线接收和放大整形于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积又很小巧,它适合于各种红外线遥控和红外线数据传输,广泛用于电视机、卫星接收机、VCD、DVD、音响、空调等家用电器中接收红外信号,图5是一体化接收头的引脚排列图,图6是本站产品配套的采用屏蔽线焊接的一体化红外接收头,采用屏蔽线焊接,抗干扰能力强,接收更可*。没有购买实验板配套的一体化红外接收头的网友可以根据图2所示接收头引脚排列图自己焊接一个。图5:一体化红外接收头(引脚排列图)图6:本站产品配套一体化红外接收头(已经用屏蔽线焊接好
22、,抗干扰能力强,插入实验板即可使用)下面就是我们将要进行红外遥控解码实验所要用到的硬件设备:S51增强型实验板、ISP编程器、AT89S51实验芯片、豪华型多功能红外线遥控器。图7:S51增强型单片机实验板及防插反红外遥控接口图8:豪华型多功能红外遥控器 高灵敏度一体化红外接收头(23元)图9:32键豪华型红外遥控器原理图图10:ISP编程器烧写实验单片机芯片AT89S524.5 红外遥控解码实验我们经过对前面的遥控编解码知识的学习,对红外遥控有了基本的了解,下面我们马上进行解码实验。本红外遥控解码实验的的功能是:程序对遥控器发射的遥控码进行解码,解码成功时蜂鸣器发出嘀嘀的解码成功提示音,如果
23、按压的是数字键09就将按键值在实验板上的5位数码管上显示出按键值,同时将按键的十六进制值用P1口的8位发光二极管指示出来;如果按压的不是数字键09,就直接从P1口输出键值;下面是遥控解码汇编源程序。 实验时将先连接好硬件设备,将配套的一体化红外遥控接收头插入实验板上的红外遥控接口内,在Keil单片机集成开发环境中新建工程,通过Keil将源程序编译得到HEX格式目标文件yk.hex,最后使用ISP编程器将目标文件烧写到AT89S51单片机中,插到S51增强型实验板上运行,拿出配套的红外遥控器进行解码测试,看看实验结果是否和程序相同。 点此下载HEX格式目标文件 yk.hex 点此下载遥控解码源程
24、序和Keil工程文件 ORG 0000H MAIN: MOV SP,#60H MOV P0,#0FFH MOV P1,#0FFH MOV P2,#0FFH MOV P3,#0FFH JNB P3.2,$ ;等待遥控信号出现 MOV R6,#10SB: ACALL YS1 ;调用882微秒延时子程序 JB P3.2,MAIN ;延时882微秒后判断P3.2脚是否出现高电平如果有就退出解码程序 DJNZ R6, SB ;重复10次,目的是检测在8820微秒内如果出现高电平就退出解码程序 ;以上完成对遥控信号的9000微秒的初始低电平信号的识别。 JNB P3.2, $ ;等待高电平避开9毫秒低电平
25、引导脉冲 ACALL YS2 ;延时4.74毫秒避开4.5毫秒的结果码 MOV R1,#1AH ;设定1AH为起始RAM区 MOV R2,#4 PP: MOV R3,#8JJJJ: JNB P3.2,$ ;等待地址码第一位的高电平信号 LCALL YS1 ;高电平开始后用882微秒的时间尺去判断信号此时的高低电平状态 MOV C,P3.2 ;将P3.2引脚此时的电平状态0或1存入C中 JNC UUU ;如果为0就跳转到UUU JB P3.2,$ ;如果为1就等待高电平信号结束UUU: MOV A,R1 ;将R1中地址的给A RRC A ;将C中的值0或1移入A中的最低位 MOV R1,A ;将
26、A中的数暂时存放在R1中 DJNZ R3,JJJJ ;接收地址码的高8位 INC R1 ;对R1中的值加1,换成下一个RAM DJNZ R2,PP ;接收完16位地址码和8位数据码和8位数据反码,存放在1AH/1BH/1CH/1DH的RAM中 ;以下对代码是否正确和定义进行识别 MOV A,1AH ;比较高8位地址码 XRL A,#00000000B ;判断1AH的值是否等于00000000,相等的话A为0 JNZ MAIN ;如果不相等说明解码失败退出解码程序 MOV A,1BH ;比较低8位地址 XRL A,#11111111B ;再判断高8位地址是否正确 JNZ MAIN ;如果不相等说
27、明解码失败退出解码程序 MOV A,1CH ;比较数据码和数据反码是否正确? CPL A XRL A,1DH ;将1CH的值取反后和1DH比较 不同则无效丢弃,核对数据是否准确 JNZ MAIN ;如果不相等说明解码失败退出解码程序 LCALL SOUND ;解码成功,声音提示 MOV A,1AH CPL A MOV P1,A ;遥控码十六进制值通过P1 LED显示出来;- 下面为09键码判断并在实验板的5位数码管中显示键值 在本次毕业设计中,只用到02键!JZPD: MOV A,1AHIRD0: CJNE A,#00H,IRD1 ;按键0判断显示 MOV P0,#0C0H MOV P2,#1
28、1100000B AJMP MAINIRD1: CJNE A,#01H,IRD2 ;按键1判断显示 MOV P0,#0F9H MOV P2,#11100000B AJMP MAINIRD2: CJNE A,#02H,IRD3 ;按键2判断显示 MOV P0,#0A4H MOV P2,#11100000B AJMP MAINIRD3: CJNE A,#03H,IRD4 ;按键3判断显示 MOV P0,#0B0H MOV P2,#11100000B AJMP MAINIRD4: CJNE A,#04H,IRD5 ;按键4判断显示 MOV P0,#99H MOV P2,#11100000B AJMP
29、 MAINIRD5: CJNE A,#05H,IRD6 ;按键5判断显示 MOV P0,#92H MOV P2,#11100000B AJMP MAINIRD6: CJNE A,#06H,IRD7 ;按键6判断显示 MOV P0,#82H MOV P2,#11100000B AJMP MAINIRD7: CJNE A,#07H,IRD8 ;按键7判断显示 MOV P0,#0F8H MOV P2,#11100000B AJMP MAINIRD8: CJNE A,#08H,IRD9 ;按键8判断显示 MOV P0,#80H MOV P2,#11100000B AJMP MAINIRD9: CJNE
30、 A,#09H,IRDOR ;按键9判断显示 MOV P0,#90H MOV P2,#11100000B AJMP MAINIRDOR: MOV P2,#0FFH ;关闭数码管使能。09以外的非数字功能按键键值不采用数码管显示,直接从P1口输出键值 AJMP MAINYS1: MOV R4,#19 ;延时子程序1D1: MOV R5,#18 DJNZ R5,$ DJNZ R4,D1 RETYS2: MOV R4,#10 ;延时子程序2D2: MOV R5,#216 DJNZ R5,$ DJNZ R4,D2 RETSOUND: MOV R7,#228 ;音效延时子程序SDL1: CPL P3.7 MOV R6,#0FFHSDL0: DJNZ R6,SDL0 DJNZ R7,SDL1 RET 把上面程序写入AT89C52单片机中,一个简单的单片机红外遥控器设计就完成了,通电后,按压遥控器上的09按键,则实验板上的数码管上就显示出对应的按键值,同时解码成功后发出声音指示。