基于单片机的直流伺服电机脉冲宽度调制控制系统_第1页
基于单片机的直流伺服电机脉冲宽度调制控制系统_第2页
基于单片机的直流伺服电机脉冲宽度调制控制系统_第3页
基于单片机的直流伺服电机脉冲宽度调制控制系统_第4页
基于单片机的直流伺服电机脉冲宽度调制控制系统_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、沈阳理工大学课程设计论文1摘摘 要要单片机是应控制领域应用的要求而出现的,随着单片机的迅速发展,起应用领域越来越广。尽管目前已经发展众多种类的单片机,但是应用较广、也是最成熟的还是最早有 Intel 开发的 MCS-51 系列单片机(51 系列单片机) 。51 系列单片机应用系统已经成为目前主流的单片机应用系统。直流电机脉冲宽度调制(Pulse Width Modulation简称PWM)调速产生于 20 世纪 70 年代中期,最早用于自动跟踪天文望远镜,自动记录仪表等的驱动,后来用于晶体管器件水平的提高及电路技术的发展,PWM 技术得到了高速发展,各式各样的脉宽调速控制器,脉宽调速模块也应运

2、而生,许多单片机也都有了 PWM 输出功能。而 MCS51 系列单片机作为应用最广泛的单片机之一,却没有 PWM 输出功能,本课设采用配合软件的方法实现了 MCS51 单片机的 PWM 输出调速功能,这对精度要求不高的场合时非常实用的。沈阳理工大学课程设计论文2一一.单片机简介单片机简介.31.1 单片机的发展史 .31.2 AT89C51 简介.4二二.硬件电路设计硬件电路设计.82.1 硬件组成.82.2 主要器件功能介绍 .82.2.1 直流伺服电机简介.82.2.2 PWM 简介及调速原理.92.2.3 二极管的应用.112.3 电路组成.122.3.1 晶振电路.122.3.2 复位

3、电路.122.3.3 单相桥式整流电路.132.3.4 调制电路.13三三.系统软件设计系统软件设计.143.1 PROTEUS介绍.143.2 汇编语言简单介绍 .173.3 WAVE 系统简介.183.3.1 wave 伟福系统的使用 .183.3.2 WAVE 的开发环境.203.3.3 WAVE 仿真器的界面.20四四.系统软件设计系统软件设计.214.1 系统简介.214.2 系统设计原理 .214.2.1 正反转控制原理.214.2.2 加速控制原理.224.2.3 减速控制原理.224.3 系统原理图.234.4 程序流程图.244.5 汇编设计.254.6 仿真结果图.29五五

4、.总总 结结.30参考文献参考文献.30沈阳理工大学课程设计论文3一一.单片机简介单片机简介1.1 单片机的发展史单片机的发展史单片机作为微型计算机的一个重要分支,应用面很广,发展很快。自单片机诞生至今以发展为上百种系列的近千个分支。如果将 8 位单片机的推出作为起点,那么单片机的发展历史大致可以分为以下几个阶段:(1)第一阶段(19761978):单片机的控索阶段。以 Intel 公司的 MCS48的推出是在工控领域的控索,参与这一控索的公司还有 Motorola、Zilog 等,都取 得了满意的效果。这就是 SCM 的诞生年代, “单片机”一词由此而来。(2)第二阶段(19781982):

5、单片机的完善阶段。Intel 公司在 MCS48 的基础上推出了完善的,典型的单片机系列 MCS51.它在以下几个方面奠定了典型的通用总线型单片机体系结构。 完善的外部总线。MCS51 设置了经典的 8 位单片机的总线结构,包 括 8 位数据总线 16 位地址总线控制总线及具有很多通信功能的串行通信接口。 CPU 外围功能单元的集中管理模式。 体现工控特性的位地址空间及位操作方式。 指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。(3)第三阶段(19821990):8 位单片机的巩固发展及 16 位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel 公司推出的 MCS96

6、系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器的特征。随着 MCS51 系列的广泛应用,许多电气厂商竞相使用 80C51 为内核,将许多测控系统中使用的电路技术、接口技术、多通道 A/D 转换部件、可靠性技术等应用到单片机中,增强了外围电路的功能,强化了智能控制的特征。(4)第四阶段(1990):微控制器的全面发展阶段。随着单片机在各个领域全面深入地发展和应用,出现了高速、大寻址范围、强运算能力的 8 位/16 位/32 位通用型单片机,以及小型廉价的专用型单片机。 沈阳理工大学课程设计论文41.2 AT89C51 简介简介AT89C5

7、1 是一种带 4K 字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS 8 位微处理器,俗称单片机。AT89C2051 是一种带 2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000 次。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL的 AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本

8、。AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。1)主要特性:a)与 MCS-51 兼容 b)4K 字节可编程闪烁存储器 c)寿命:1000 写/擦循环d)数据保留时间:10 年e)全静态工作:0Hz-24MHzf)三级程序存储器锁定g)1288 位内部 RAMh)32 可编程 I/O 线i)两个 16 位定时器/计数器j)5 个中断源 k)可编程串行通道l)低功耗的闲置和掉电模式m)片内振荡器和时钟电路2)单片机内部结构图:沈阳理工大学课程设计论文53)AT89C51 引脚图:沈阳理工大学课程设计论文64)管脚说明: VCC:供电电压。 GND:接地。 P0 口:P0

9、 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。 P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 FLASH编程和校验时,P1 口作为第八位地址接

10、收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I

11、/O 口,可接收输出 4 个TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0(记时器 0 外部输入)沈阳理工大学课程设计论文7 P3.5 T1(记时器 1 外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)

12、 P3 口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,

13、该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2

14、:来自反向振荡器的输出。 振荡器特性: XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。沈阳理工大学课程设计论文8二二.硬件电路设计硬件电路设计2.1 硬件组成硬件组成本系统由 PC 机、MCS-51 单片机开发系统、 、PWM 脉宽调制控制板以及直流伺服电动机等组成。具体相关硬件如下:二极管(1N4077)4 个,场效应管(2SJ50)4 个,非门 74LS0

15、4 1 个,与门74LS08 2 个,电容(CAPACITOR) 2 个,芯片(AT89C51) 1 个,开关(BUTTON)3 个,直流伺服电动机(MOTOR)1 个,电阻(RES)4 个,电源 3 个,地(GROUND)4 个。元件表硬件型号数量硬件型号数量1N40774MOTOR12SJ504RES474LS041CAPACITOR274LS082GROUND4AT89C511VCC3BUTTON32.2 主要器件功能介绍主要器件功能介绍2.2.1 直流伺服电机简介直流伺服电机简介伺服电机也称执行电机,它具有一种服从控制信号的要求而动作的电机,在信号来到之前,转子静止不动;信号来到之后,

16、转子立即转动;当信号小时,转子能即使自行停转,由于这种“伺服”性能,因此而得名。沈阳理工大学课程设计论文9按照在自动控制系统中的功用所要求,伺服电机具备可控性好、稳定性高和速应性强等基本性能。可控制性好是指寻好消失以后,能立即自行停转;稳定性高是指转速随转矩的增加而均匀下降,速应性强是指反应快,灵敏。直流伺服电动机在自动控制系统中常用作执行元件,对它的要求是要有下垂的机械特性、线性的调节特性和对控制信号能作出快速反应。该系统采用的是电磁式直流伺服电动机,其型号为 45SY01 型,其转速 n 的计算公式如下n=E/K=(Ua-IaRa)/K式中n 为转速; 为磁通;E 为电枢反电势;Ua 为外

17、加电压;IaRa 为电枢电流和电阻。直流伺服电机与普通直流电机以及交流伺服电机的比较:直流伺服电机的工作原理和普通直流电机相同。只要在其励磁绕组中有电流通过且产生了磁通,当电枢绕组中通过电流时,这个电枢电流与磁通互相作用而产生转矩使伺服电机投入工作。这两个绕组其中的一个断电时,电动机立即停转,它不象交流伺服电动机那样有“自转”现象。所以我们选择直流伺服电动机来进行自动门的拖动。2.2.2 PWM 简介及调速原理简介及调速原理(1)简介:PWM 控制就是对脉冲的宽度进行调制的技术,即通过对一系列脉冲的宽度进行调制,来等待地获得所需要波形。PWM 的一个优点是从处理器到被控系统信号都是数字形式的,

18、无需进行数模转换。让信号保持在数字形式可将噪声影响降到最小。PWM 控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式。(2)调速原理:占空比表示了在一个周期 T 里,开关管导通的时间与周期的比值。其变化范围为 01。在电源电压不变的情况下,电枢的端电压的平均值 U 取决于占空比的大小。改变其值就可以改变端电压的平均值,从而达到调速的目的。在 PWM 调速时,占空比是一个重要的参数。以下是 3 种方式都可以改变占空比的值沈阳理工大学课程设计论文10计算公式:占空比=t ton/Ta)定宽调频法b)调宽调频法c)定频调宽法目前,在直流伺服电机的控制中,主要使用定频

19、调宽法。(3)与 V-M 系统相比,PWM 调速系统有下列优点:由于 PWM 调速系统的开关频率较高,仅靠电枢电感的滤波作用可能就足以获得脉冲动很小的直流电流,电枢容易连续,系统的低速运行平稳,调速范围较宽,可达 1:10000 左右。又由于电流波形比 V-M 系统好,在相同的平均电流即相同的输出转矩下,电动机的损耗和发热都较小。同样由于开关频率高,若与快速响应的电机配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗干扰能力强。由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率比较高。沈阳理工大学课程设计论文112.2.3 二极管的应用二极管的应用1)整流二极管 利用二极管单向导

20、电性,可以把方向交替变化的交流电变换成单一方向的脉动直流电。2)开关元件 二极管在正向电压作用下电阻很小,处于导通状态,相当于一只接通的开关;在反向电压作用下,电阻很大,处于截止状态,如同一只断开的开关。利用二极管的开关特性,可以组成各种逻辑电路。3)限幅元件 二极管正向导通后,它的正向压降基本保持不变(硅管为 0.7V,锗管为0.2V)。利用这一特性,在电路中作为限幅元件,可以把信号幅度限制在一定范围内。4)继流二极管 在开关电源的电感中和继电器等感性负载中起继流作用。5)检波二极管 在收音机中起检波作用。6)变容二极管 使用于电视机的高频头中。7)显示元件 用于电视机显示器上。沈阳理工大学

21、课程设计论文122.3 电路组成电路组成2.3.1 晶振电路晶振电路图2.3.1 振电路图,由两个电容和一个晶振组成,晶振频率为 12MHZXTAL218XTAL119U1X1CRYSTALC130pFC230pFC3VCC图2.3.12.3.2 复位电路复位电路图2.3.2 为复位电路图,由直流电源,电容和电阻组成,其主要功能是对单片机进行复位功能。R410kC330uVCCVCC沈阳理工大学课程设计论文13图2.3.22.3.3 单相桥式整流电路单相桥式整流电路图2.3.3 是单相桥式整流电路图,由 4 个场效应管 IGBT 和四个二极管组成,其功能是将交流电转化成直流电。其负载为伺服直流

22、电机,通过门控信号的改变可以调节电机的转速和转向图2.3.32.3.4 调制电路调制电路图 2.3.4 是调制电路图,由两个与门和一个非门组成,其功能主要是产生PWM 脉冲来控制 IGBT。沈阳理工大学课程设计论文14123U2:A74LS08456U2:B74LS0812U3:A74LS04VCC/VDDVCC/VDD图 2.3.4三三.系统软件设计系统软件设计3.1 Proteus 介绍介绍Proteus 软件是英国 Labcenter electronics 公司出版的 EDA 工具软件(该软件中国总代理为广州风标电子技术有限公司) 。它不仅具有其它 EDA 工具软件的仿真功能,还能仿真

23、单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus 是世界上著名的 EDA 工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB 设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086 和 MSP430等,2010 年即将增加 Cortex 和

24、DSP 系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持 IAR、Keil 和 MPLAB 等多种编译器。 3.1.2 其功能特点 Proteus 软件具有其它 EDA 工具软件(例:multisim)的功能。这些功能是:沈阳理工大学课程设计论文15(1)原理布图;(2)PCB 自动或人工布线;(3)SPICE 电路仿真。 革命性的特点:(1)互动的电路仿真 用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分 SPI 器件,部分 IIC 器件。 (2)仿真处理器及其外围电路 可以仿真 51 系列、AVR、PIC、ARM、等常用主流单片机。还可以直

25、接在基于原理图的虚拟原型 上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Proteus 建立了完备的电子设计开发环境。 3.1.3 具有 4 大功能模块(1)智能原理图设计(ISIS)丰富的器件库:超过 27000 种元器件,可方便地创建新元件:智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的 BMP 图纸,可以方便地供WORD、POWERPOINT 等多种文档使用。

26、 (2)完善的电路仿真功能(Prospice) ProSPICE 混合仿真:基于工业标准 SPICE3F5,实现数字/模拟电路的混合仿真; 超过 27000 个仿真器件:可以通过内部原型或使用厂家的 SPICE 文件自行设计仿真器件,Labcenter 也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件;多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用 wav 文件) 、指数信号、单频 FM、数字时钟和码流,还支持文件形式的信号输入;丰富的虚拟仪器:13 种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计

27、数器、逻辑探头、虚拟终端、SPI 调试器、I2C 调试器等;生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析; (3)独特的单片机协同仿真功能(VSM) 沈阳理工大学课程设计论文16 支持主流的 CPU 类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicSt

28、amp、8086、MSP430 等,CPU 类型随着版本升级还在继续增加,如即将支持 CORTEX、DSP 处理器; 支持通用外设模型:如字符 LCD 模块、图形 LCD 模块、LED 点阵、LED 七段显示模块、键盘/按键、直流/步进/伺服电机、RS232 虚拟终端、电子温度计等等,其 COMPIM(COM 口物理接口模型)还可以使仿真电路通过 PC 机串口和外部电路实现双向异步串行通信;实时仿真:支持 UART/USART/EUSARTs 仿真、中断仿真、SPI/I2C 仿真、MSSP仿真、PSP 仿真、RTC 仿真、ADC 仿真、CCP/ECCP 仿真;编译及调试:支持单片机汇编语言的编

29、辑/编译/源码级仿真,内带 8051、AVR、PIC 的汇编编译器,也可以与第三方集成编译环境(如 IAR、Keil 和 Hitech)结合,进行高级语言的源码级仿真和调试; (4)实用的 PCB 设计平台 原理图到 PCB 的快速通道: 原理图设计完成后,一键便可进入 ARES 的 PCB设计环境,实现从概念到产品的完整设计;先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使 PCB 设计更为合理;完整的 PCB 设计功能:最多可设计 16 个铜箔层,2个丝印层,4 个机械层(含板边) ,灵活的布线策略供用户设置,自动设计规则检查,3

30、D 可视化预览;多种输出格式的支持:可以输出多种格式文件,包括Gerber 文件的导入或导出,便利与其它 PCB 设计工具的互转(如 protel)和PCB 板的设计和加工。 3.1.4 Proteus 提供了丰富的资源(1)Proteus 可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有 30 多个元件库。 (2)Proteus 可提供的仿真仪表资源 :示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C 调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。 (3)除了现实存在的仪器外,Proteus 还提供了一个图形显示

31、功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功沈阳理工大学课程设计论文17能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。 (4)Proteus 可提供的调试手段 Proteus 提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。 3.1.5 电路功能仿真 在 PROTEUS 绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在 PROTEUS 的原理图中看到模拟的实物运行状态和过程。 PROTEUS 是单片机课堂教学的先进助手。 PROTEUS 不仅

32、可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。 课程设计、毕业设计是学生走向就业的重要实践环节。由于 PROTEUS 提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台 随着科技的发展, “计算机仿真技术”已成为许多

33、设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。相信在单片机开发应用中 PROTEUS 也能茯得愈来愈广泛的应用。 使用 Proteus 软件进行单片机系统仿真设计, 是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程设计和全国大学生电子设计竞赛中,我们使用 Proteus 开发环境对学生进行培训,在不需要硬件投入的条件下,学生普遍反映,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。实践证明,在使用 Proteus 进行系统仿真开发成功之后再进

34、行实际制作,能极大提高单片机系统设计效率。因此,Proteus 有较高的推广利用价值。 目前 Proteus 的最新版为 7.7 sp2,今年将推出 8.0 版本,增加 DSP 系列及 ARM cortex 处理器沈阳理工大学课程设计论文183.2 汇编语言简单介绍汇编语言简单介绍汇编语言(Assembly Language)是面向机器的程序设计语言.汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。汇编语言”作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。高级的汇编器如 MASM, TASM 等等为我们写

35、汇编程序提供了很多类似于高级语言的特征,比如结构化、抽象等。在这样的环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令,已经类同于高级语言。现在的汇编环境已经如此高级,即使全部用汇编语言来编写windows 的应用程序也是可行的,但这不是汇编语言的长处。汇编语言的长处在于编写高效且需要对机器硬件精确控制的程序。 在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。因此汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种

36、起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为汇编。 汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点。但在编写复杂程序时,相对高级语言代码量较大,而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。汇编语言的特点: .面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的。 .保持了机器语言的优点,具有直接和简捷的特点。 .可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。 .目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。 .

37、经常与高级语言配合使用,应用十分广泛。沈阳理工大学课程设计论文193.3 WAVE 系统简介系统简介 3.3.1 wave 伟福系统的使用伟福系统的使用1.文本编辑器的使用在伟福编辑器中,可以编辑 C 语言、汇编语言、PLM 语言程序,方法如下:(1)调整主窗口中各窗口的边缘线,可以将编辑窗口调整至最大;(2)在编辑框中可像一般的文本编辑软件一样编辑程序。并能通过复制、剪贴、粘贴等功能对程序进行修改。注意:源程序除可以在 WAVE6000 的编译环境下编辑、录入,还可以在WORD、记事本或写字板环境下录入、编辑和修改,并拷贝到伟福编辑器中进行编译,但在编译前须将文件存为“*.asm”的格式。2

38、程序的编译在程序运行之前,应先对程序进行编译,方法为:(1) 进入【项目】菜单,选择【编译】项,对程序进行编译。(2) 按 F9 键,对程序进行编译。(3) 在工具条中选择【编译(F9) 】按钮 ,对程序进行编译。3程序的运行(1) 在【执行】菜单中选择【全速执行】 ,可执行整个程序。(2) 按 Ctrl+F9,也可全速执行程序。(3) 选择工具栏中的全速执行(Ctrl+F9)按钮 ,也可执行程序。(4) 也可按说明书中选择断点执行方式和单步执行方式。注意:上机过程中应体会单步、跟踪、设置断点、程序运行至光标处(按F4) 、全速运行等软件调试方法的功能和特点。4计算机与单片机实验仪的连接运行将

39、计算机与单片机实验仪连接,可直接将已编辑好的程序编译成机器码,通过串行口传输给单片机实验仪,并可运行程序。(1) 用 9 芯串行线连接计算机的串行口(COM1 或 COM2)和单片机实验箱的仿真器串口连接;(2) 连接实验仪的电源,打开实验仪的电源;沈阳理工大学课程设计论文20(3) 连接计算机的电源,打开计算机电源;(4) 设置仿真器的各设置项,连接成功后在窗口的左上角的【仿真器设置】按钮上将出现一个绿色的“” 。 (5) 编写程序或调入事先编辑好的程序文件,按 F9 键进行编译程序。按Ctrl+F9 执行程序。3.3.2 WAVE 的开发环境的开发环境WAVE 仿真器有两种版本:DOS 版

40、本和 Windows 版本。中文界面,英文界面可任选,并支持 ASM,C,PLM 语言混合编程,具有项目管理功能,为用户的资源共享,课题重组提供强有力的手段。有丰富的窗口显示方式,能多方位,动态地显示仿真的各种过程。可采用双工作模式: 软件模拟仿真(不要仿真器也能模拟仿真)和硬件仿真。由于编辑、编译、下载、调试全部集中在一个环境下,为使用者提供了一个全集成环境,统一的界面,包含一个项目管理器,一个功能强大的编辑器,汇编 Make、Build 和调试工具并提供一个与第三方编译器的接口,为用户提供了方便。WAVE 仿真器具有强大的逻辑分析仪综合调试功能,通过交互式软件菜单窗口对系统硬件的逻辑或时序

41、进行同步实时采样,并能实时在线调试分析。3.3.3 WAVE 仿真器的界面仿真器的界面WAVE 的窗口可根据选择主要功能如下:1 项目窗口 可对项目进行管理。2 信息窗口 显示系统编译输出的信息。如果程序有错,会以图标形式指出, 表示错误, 表示警告, 表示通过在编译信息行会有相关的生成文件,双击鼠标左键,或单击右键在弹出菜单中选择“打开”功能,可以打开相关文件。如果有编译错误,双击左键,可以在源程序中指出错误所在行。3 CPU 窗口 CPU 窗口,可给出机器码及反汇编程序,可以让你更清楚地了解程序执行过程。4 数据窗口 51 系列有以下四种数据窗口:沈阳理工大学课程设计论文211) DATA

42、 内部数据窗口。在内部数据窗口中可以看到 CPU 内部的数据值,红色的为上一步执行过程中,改变过的值,窗口状态栏中为选中数据的地址,可以在选中的数据上直接修改数据的十六进制值,也可以用弹出菜单的修改功能,修改选中的数据值。数据窗口通过项目窗口下方的 DATA 选项激活。2) CODE 程序数据窗口;程序数据窗口显示的是编译后程序码,状态栏显示的是选中数据的地址,可以对在选中数据上直接修改程序数据的十六进制值,也可以对程序数据进行“块填充”, “块移动”操作,也可以读入一段二进制代码插入程序数据中,也可以将程序数据中的某段代码写文件中。3) XDATA 外部数据窗口。通过数据窗口可观察程序运行过

43、程中数据单元中的内容。4) PDATA 外部数据窗口(页方式) 。WAVE 的窗口较多,可根据不同的需要进行选择。四四.系统软件设计系统软件设计4.1 系统简介系统简介该课设是基于单片机利用脉冲宽度调制来控制伺服直流电动机的转速以及转向,是一个典型的控制系统。脉冲宽度调制主要是改变脉冲信号的占空比来实现控制的。当增加脉冲的占空比,伺服直流电动机转速增加;反之,其速度降低。所以通过控制脉冲的占空比可以控制伺服直流电动机的转速。沈阳理工大学课程设计论文224.2 系统设计原理系统设计原理4.2.1 正反转控制原理正反转控制原理该系统中利用开关 K3 控制伺服直流电动机的正反转。当开关闭合时既输入信

44、号为 1,通过单片机编程处理后,控制电动机的正转;反之,控制电动机的反转。实现该功能的子程序为:LOOP: JB K3,LOOPZF ;高电平逆时针转,低电平顺时针转 CLR ZF ;针转 LJMP LOOPK1LOOPZF: SETB ZF4.2.2 加速控制原理加速控制原理该系统中利用开关 K1 控制伺服直流电动机的加速。当开关闭合时既输入信号为 1,通过单片机编程处理后,增加控制脉冲的占空比,从而增大了电动机两侧的电压,使伺服直流电动机加速;反之,电动机保持匀速转动。实现该功能的子程序为:LOOPK1: JB K1,LOOPK2 ;K1 按下加速 LCALL DELAY MOV A,PW

45、ML ADD A,#1 ;调宽值低 4 位加 1 MOV PWML,A MOV A,PWMH ADDC A,#0 ;调宽值高 4 位加 1 MOV PWMH,A JNC LOOPK2 ;最大值时 MOV PWMH,#0FFH沈阳理工大学课程设计论文234.2.3 减速控制原理减速控制原理该系统中利用开关 K2 控制伺服直流电动机的加速。当开关闭合时既输入信号为 1,通过单片机编程处理后,减少控制脉冲的占空比,从而减小了电动机两侧的电压,使伺服直流电动机减速;反之,电动机保持匀速转动。实现该功能的子程序为:LOOPK2: JB K2,OVER ;K2 按下减速 LCALL DELAY MOV A

46、,PWML CLR C SUBB A,#1 ;调宽值低 4 位减 1 MOV PWML,A MOV A,PWMH SUBB A,#0 ;调宽值高 4 位减 1 MOV PWMH,A JNC OVER MOV PWMH,#00H ;最小值时4.3 系统原理图系统原理图下图是系统的原理图,图中单片机 AT89C51,其主要功能就是将开关的模拟信号转化成数字信号,并通过固定程序,通过对信号的识别,输出相应的控制沈阳理工大学课程设计论文24信号。系统图的最右侧是采用 IGBT 作为开关器件的单相桥式 PWM 逆变电路。以电动机作为负载,工作时 Q1,Q3 的通断状态互补,Q2,Q4 的通断状态也互补。

47、PWM 逆变电路中间是调制电路,输入信号分别是信号波和载波,输出的信号分别送至 4 个 IGBT 的门极,对其控制。4.4 程序流程图程序流程图由以下流程图可知,系统先检测开关 3(正反转开关)的信号。如果是 0 信沈阳理工大学课程设计论文25号(开的状态) ,则发出正转信号,电动机正转,反之电动机反转。检测完开关3,接下来检测开关 1(加速开关) ,若信号为 1(关的状态) ,发出加速的信号,电动机加速,若信号为 0(开的状态) ,速度保持不变。再检测开关 2(减速开关) ,若信号为 1(关的状态) ,发出减速的信号,电动机减速,若信号为 0(开的状态) ,速度保持不变。系统一直对三个开关信号循环检测,循环的执行程序。图3.3沈阳理工大学课程设计论文264.5 汇编设计汇编设计K1 BIT P1.4 ;加速键K2 BIT P1.5 ;减速键K3 BIT P1.6 ;正反键CLK BIT P0.0 ;速度控制信号ZF BIT P0.1 ;正反控制信号PWMH EQU 30H ;调宽值,定时器所赋值PWML EQU 31HORG 0000HLJMP MAINO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论