电机调速控制_第1页
电机调速控制_第2页
电机调速控制_第3页
电机调速控制_第4页
电机调速控制_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机控制技术课程设计说明书 小功率直流电机测速系统的设计 学生姓名: 学号: 学 院: 专 业: 指导教师: 2016年 1月目 录1 绪论12系统要求分析22.1本设计任务22.2 功能介绍23 PWM脉宽调制原理33.1 PWM调速原理33.2 PWM调速方法33.3 PWM实现方式44硬件电路54.1硬件电路设计54.2单片机模块54.2.1时钟电路54.2.2复位电路64.2.3显示电路64.2.4PWM电机驱动电流75 软件设计95.1系统的软件设计95.2软件设计中的特点105.3程序设计106 软件调试116.1软件程序116.2 结论127 硬件调试138 结束语14附录1

2、硬件电路图15附录2 程序源代码16参考文献211 绪论直流电机的定义:将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。 近年来,随着科技的进步,直流电机得到了越来越广泛的应用,直流具有优良的调速特性,调速平滑,方便,调速范围广,过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速起动、制动和反转,需要满足生产过程自动化系统各种不同的特殊要求,从而对直流电机提出了较高的要求,改变电枢回路电阻调速、改变电压调速等技术已远远不能满足现代科技的要求,这是通过PWM方式控制直流电机调速的方法就应运而生。采取传统的调速系统主要有以下的缺陷:模拟电路容易随时间飘移,

3、会产生一些不必要的热损耗,以及对噪声敏感等。而用PWM技术后,避免上述的缺点,实现了数字式控制模拟信号,可以大幅度减低成本和功耗。并且PWM调速系统开关频率较高,仅靠电枢电感的滤波作用就可以获得平滑的直流电流,低速特性好;同时,开关频率高,快响应特性好,动态抗干扰能力强,可获很宽的频带;开关元件只需工作在开关状态,主电路损耗小,装置的效率高,具有节约空间、经济好等特点。2 系统要求分析2.1本设计任务任务: 单片机为控制核心的直流电机PWM调速控制系统设计的主要内容以及技术参数(功能主要包括):直流电机的正转;直流电机的反转;直流电机的转速在数码管上显示; 直流电机的启动;直流电机的停止;本设

4、计的优点是:硬件电路简单,软件编译简单,测量速度快捷,整体价格低廉,电路功耗低等特点。但由于在硬件系统中的测量误差与计算中不可避免的舍入误差,使得测量系统含有一定的误差。数码管显示2.2 功能介绍按键控制单片机PWM电机驱动图1 总体设计方案流程图键盘向单片机输入相应控制指令,由单片机通过P1.0与P1.1其中一口输出与转速相应的PWM脉冲,另一口输出低电平,经过信号放大,驱动H型桥式电动机控制电路,实现电动机转向与转速的控制。电动机的运转状态通过数码管显示出来。电动机所处速度级以速度档级数显示。正转时最高位显示“三” ,其它三位为电机转速;反转时最高位显示“F”,其它三位为电机转速。 3 P

5、WM脉宽调制原理31 PWM调速原理载两端的电压,从而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,比如:电机调PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负速、温度控制、压力控制等等。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并且根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电机电枢上电压的“占空比”来达到改变平均电压大小的目的,从而来控制电动机的转速。也正因为如此,PWM又被称为“开关驱动装置”。如图2所示:图2 PWM信号的占空比设电机始终接通电源时,电机转速最大为Vmax,设占空比为D= t1 / T,则电机的平均

6、速度为Va = Vmax * D,其中Va指的是电机的平均速度;Vmax 是指电机在全通电时的最大速度;D = t1 / T是指占空比。由上面的公式可见,当我们改变占空比D=t1/T时,就可以得到不同的电机平均速度Vd,从而达到调速的目的。严格来说,平均速度Vd与占空比D并非严格的线性关系,但是在一般的应用中,我们可以将其近似的看成是线性关系。3. 2 PWM调速方法基于单片机类由软件来实现PWM:在PWM调速系统中占空比D是一个重要参数在电源电压不变的情况下,电枢端电压的平均值取决于占空比D的大小,改变D的值可以改变电枢端电压的平均值从而达到调速的目的。改变占空比D的值有三种方法:A、定宽调

7、频法:保持不变,只改变t,这样使周期(或频率)也随之改变。B、调宽调频法:保持t不变,只改变,这样使周期(或频率)也随之改变。C、定频调宽法:保持周期T(或频率)不变,同时改变和t。 前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用定频调宽法来改变占空比从而改变直流电动机电枢两端电压。利用单片机的定时计数器外加软件延时等方式来实现脉宽的自由调整,此种方式可简化硬件电路,操作性强等优点。3.3 PWM实现方式方案一:采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个us。方案二:采用软件延时方式,这一方

8、式在精度上不及方案一,特别是在引入中断后,将有一定的误差。故采用方案一。4 硬件电路4.1 硬件电路设计硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。 单片机 STC89C52显示电路 复位电路驱动电路时钟电路图 3 单片机部分硬件电路图4.2 单片机模块根据系统功能要求以及单片机硬件电路设计思路(如图3)对单片机模块进行设计,要使单片机准确的测量电机转速,并且使测出的数据能显示出来,所以整个单片机部分分为传感器电路、时钟电路、复位电路、执行元件以及显示电路五个部分。4.2.1 时钟电路单片机各功能部件的运行都是以时钟

9、控制信号为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。本设计中此采用内部时钟方式,如图3所示,以石英晶体振荡器和两个片电容组成外部振荡源。片内的高增益反相放大器通过XTAL1、XTAL2外接,作为反馈元件的片外晶体振荡器与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。振荡器的频率取决于晶振的振荡频率,振荡频率范围为1.212MHz。工程应用时通常采用6MHz或12MHz。图4中X1为12MHz(本设计采用的也是12MHz),电容C2、C4为33pF,它们一起构成此单片机的自激振荡器。图4 时钟电路4.2

10、.2 复位电路单片机的RST引脚为复位(Reset)端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的低电平,就可以实现系统复位,使单片机回到初始状态。如图5所示,本设计采用手动复位,用一个电容与一个10K电阻串联组成,电阻接VCC,电容接地,RESET脚接在它们中间,RC选择10uF,按键与200R电阻串联,在电容两端并联,就成了按键复位电路,未上电时,RST端为高电平,只要按下这个按键,RST端转换为低电平,经过两个机器周期后,单片机就能复位。图5 复位电路4.2.3显示电路数码管显示原理:我们最常用的是七段式和八段式LED数码管,八段比七段多了一个小数点,其他的基本相同。所谓的八段

11、就是指数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形。数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个LED的阴极连在一起,让其接地,这样给任何一个LED的另一端高电平,它便能点亮。图6 数码管显示电路4.2.4 PWM电机驱动电路电动机PWM驱动模块的电路设计与实现具体电路见下图。本电路采用的是基于PWM原理的H型桥式驱动电路。图7 PWM电机驱动电路PWM电路由复合体管组成H型桥式电路构成,四部分晶体管以对角组合分为两组:根据两个输入端的高低电平决定晶体管的导通和截止。4个二极管在电路中起防止晶体管产生反向电压的保护作用,防止电动机两端的电流和晶体管

12、上的电流过大的保护作用。 在实验中的控制系统电压统一为5v电源,因此若复合管基极由控制系统直接控制,则控制电压最高为5V,再加上三极管本身压降,加到电动机两端的电压就只有4V左右,严重减弱了电动机的驱动力。电动机驱动部分通过外接12V电源驱动。这样不仅增加了各系统模块之间的隔离度,也使驱动电流得到了大大的增强。图8 PWM脉冲输入在电动机驱动信号方面,我们采用了占空比可调的周期矩形信号控制。脉冲频率对电动机转速有影响,脉冲频率高连续性好,但带带负载能力差脉冲频率低则反之。经实验发现,当电动机转动平稳,但加负载后,速度下降明显,低速时甚至会停转;脉冲频率在10Hz以下,电动机转动有明显跳动现象。

13、而具体采用的频率可根据个别电动机性能在此范围内调节。通过P10输入高电平信号,P11输入低电平,电机正转;通过P10输入低电平信号,P11输入高电平,电机反转;P10、P11同时为高电平或低电平时,电机不转。通过对信号占空比的调整来对电机转速进行调节。5 软件设计5.1 系统的软件设计 本系统编程部分工作采用KELI-C51语言完成,采用模块化的设计方法,与各子程序做为实现各部分功能和过程的入口,完成键盘输入、按键识别和功能、PWM脉宽控制和数码管显示等部分的设计。单片机资源分配如下表:P0显示模块接口键盘中断P1键盘模块接口P1.0/P1.1PWM电机驱动接口系统时钟图9 单片机资源分配PW

14、M脉宽控制:本设计中采用软件延时方式对脉冲宽度进行控制,延时程序函数如下:/*延时函数*/delays()uchar i;for(i=5000;i>0;i-);键盘中断处理子程序:采用中断方式,按下键,完成延时去抖动、键码识别、按键功能执行。要实现按住加/减速键不放时恒加或恒减速直到放开停止,就需在判断是否松开该按键时,每进行一次增加/减少一定的占空比。显示子程序:利用数组方式定义显示缓存区,缓存区有8位,分别存放各个数码管要显示的值。定时中断处理程序:采用定时方式1,因为单片机使用12M晶振,可产生最高约为65.5ms的延时。对定时器置初值B1E0H可定时20ms,即系统时钟精度可达0

15、.02s。当20ms定时时间到,定时器溢出则响应该定时中断处理程序,完成对定时器的再次赋值,并对全局变量time加1,这样,通过变量time可计算出系统的运行时间。5.2 软件设计中的特点 对于电机的启停,在PWM控制上使用渐变的脉宽调整,即开启后由停止匀加速到默认速度,停止则由于当前速度逐渐降至零。这样有利于保护电机。键盘处理上采用中断方式,不必使程序对键盘反复扫描,提高了程序的效率。5.3 程序设计根据以上设计思路和各个模块的流程图即可编写出本次毕业设计的程序,注意其中各个模块间的参数传递以及堆栈指针等问题,程序设计的任务即可完成,写出初始的程序,再进行上机调试。6 软件调试 本文设计运用

16、c语言进行编程,我们首先来介绍一下keil-uVision软件: Keil有两种模式: 构建模式:  用于编辑和编译所有的程序文件,并生成最终的可执行程序。在创建程序相关章节中,我们将详细描述此构建模式。 调试模式:  提供一个强大的调试环境,帮助您跟踪调试程序。在调试程序相关章节中,我们将详细描述此调试模式。6.1 软件程序 构建过程:在菜单或工具条上点击 “Build Target”  命令之后,将开始编译代码。系统将自动检测文件依赖和关联性,因此只有修改过的文件才会被重新编译,这样可以显著的加快编译过程。您或许可以设定全局优化选项,对C或其它模块执行增量式重

17、编译。通过Project菜单,您可以进入项目文件和项目管理设定的对话框。点击Keil -Vision4 图标打开Vision应用程序后,将下面下面这个窗口。在这个窗口里,您将可以创建项目、编辑文件、配置开发工具、执行编译连接,以及进行项目调试。图10 C程编译图经编译0警告、0错误,并生成”.hex”文件。如图10。 图11 调试图一 图12 调试图二定时器工作正常,如图11。单片机输出正常,如图12.硬件缺陷:由于proteus软件中并没有光电编码器,电机测速之类的相关硬件也并没有做出实物连接,所以数码管并没有实时显示电机的转速,要是做出实物图连接的话,应该能实时显示。硬件接线如附录一。6.

18、2 结论 本文主要设计了一种基于单片机和编码器测量电机转速的测量系统,其中编码器为欧姆龙E6B2-WZ6C编码器。编码器输出的脉冲通过单片机对连续脉冲计数来实现转速测控。运行实验表明,该系统硬件系统接口电路简单,工作稳定可靠,满足调速要求具有一定的理论及实用价值。7 硬件调试直流电机的调试功能仿真如下图:1、正转时,电机正转,数码管最高位显示“三”,其它三位电机的转速,如下图:图13 电机的正转及转速2、反转时,电机反转,数码管最高位显示“F”,其它三位电机的转速,如下图:图14 电机的反转及转速8 结束语附录一:硬件电路图图15 硬件图附录二:程序源代码/*基于单片机AT89C52的直流电机

19、PWM调速控制系统*/*班级: */* */*时间:2016年1月19日*/*头文件*/#include<reg52.h> #include<absacc.h> #include <intrins.h> /* / /*自定义变量*/#define uint unsigned int /自定义变量#define uchar unsigned char char gw,sw,bw,qw;uchar j; /定时次数,每次20msuchar f=5; /计数的次数sbit P10=P10; /PWM输出波形1sbit P11=P11; /PWM输出波形2sbit

20、P12=P12; /正反转sbit P13=P13; /加速sbit P14=P14; /减速sbit P15=P15; /停止sbit P16=P16; /启动uchar k;uchar t; /脉冲加减/*/*控制位定义*/Uchar codesmg12=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x71;/程序存储区定义字型码表char data led4=0x08,0x04,0x02,0x01; /位码uint x; /数码管显示的数值display(); /数码管显示 delays(); /延时函数key();dis

21、plays();/*/*主函数*/main (void) TMOD=0x51; /T0方式1 定时计数T1方式1计数TH0=0xb1; /装入初值 20MSTL0=0xe0;TH1=0x00; / 计数567TL1=0x00;TR0=1; /启动 t0TR1=1; /启动t1gw=sw=bw=qw=0; /数码管初始化P0=0xc0;P2=1;while(1) /无限循环 display(); /数码管显示 key(); /*/*数码管显示*/display()uchar i; gw=x%10; /求速度个位值,送到个位显示缓冲区sw=(x/10)%10; /求速度十位值,送到十位显示缓冲区bw=(x/100)%10; /求速度百位值,送到百位显示缓冲区qw=x/1000; /求速度千位值,送到千位显示缓冲区for(i=0;i<4;)P2=ledi;if(i=0) /显示个位P0=smggw;delays();else if(i=1) /显示十位P0=smgsw;delays();else if(i=2) /显示百位P0=smgbw;delays(); else if(i=3) /显示千位 if(k=0)/正转时显示"三" P0=0x49; delays();else P0=0x71; /反转时显示"F" i+;/*/*延时

温馨提示

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

评论

0/150

提交评论