ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:142.67KB ,
资源ID:6767704      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6767704.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机控制直流电动机课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机控制直流电动机课程设计.docx

1、单片机控制直流电动机课程设计一、 设计目的二、 设计任务和要求三、 设计原理分析四、 硬件资源及原理五、 硬件图六、 程序框图七、 程序八、 调试运行九、 仿真截图一十、 设计心得体会一、设计目的1、通过单片机课程设计,熟练掌握C语言的编程方法,将理论联系到实践中,提高我们的动脑和动手的能力。2、通过对单片机控制直流电动机控制系统的设计,掌握A/D转换、D/A转换的有关原理,加深对PWM波的理解和使用,同时对单片机的使用更加熟练,通过对简单程序的编写提高我们的逻辑抽象能力。二、设计任务和要求任务:采用单片机设计一个控制直流电动机并测量转速的装置。要求:1、通过改变A/D输入端的可变电阻来改变A

2、/D输入电压,D/A输入检测量大小,进而改变直流电机的转速。2、手动控制。在键盘上设置两个按键直流电动机加速键和直流电机减速键。在手动状态下,每按一次键,电机的转速按照约定的速率改变。3、键盘列扫描(4*6)。三、设计原理分析1. 设计思路本文设计的直流PWM调速系统采用的是调压调速。系统主电路采用大功率GTR为开关器件、H桥单极式电路为功率放大电路的结构。PWM调制部分是在单片机开发平台之上,运用汇编语言编程控制。由定时器来产生宽度可调的矩形波。通过调节波形的宽度来控制H电路中的GTR通断时间,以达到调节电机速度的目的。增加了系统的灵活性和精确性,使整个PWM脉冲的产生过程得到了大大的简化。

3、设计以AT89C51单片机为核心,以键盘作为输入达到控制直流电机的启停、速度和方向,完成了基本要求和发挥部分的要求。在设计中,采用了PWM技术对电机进行控制,通过对占空比的计算达到精确调速的目的。本文介绍了直流电机的工作原理和数学模型、脉宽调制控制原理和H桥电路基本原理设计了驱动电路的总体结构,根据模型,利用PROTEUS软件对各个子电路及整体电路进行了仿真,确保设计的电路能够满足性能指标要求,并给出了仿真结果。2、基本原理主体电路:即直流电机PWM控制模块。PWM(脉冲宽度调制)是通过控制固定电压的直流电源开关频率,改变负载两端的电压,从而达到控制要求的一种电压调整方法。这部分电路主要由80

4、C51单片机的I/O端口、定时计数器、外部中断扩展等控制直流电机的加速、减速,并且可以调整电机的转速,还可以方便的读出电机转速的大小和了解电机的转向,能够很方便的实现电机的智能控制。其间是通过80C51单片机产生脉宽可调的脉冲信号并输入到L298驱动芯片来控制直流电机工作的。四、硬件资源及原理1.1直流电机调速原理直流电动机根据励磁方式不同,直流电动机分为自励和他励两种类型。不同励磁方式的直流电动机机械特性曲线有所不同。但是对于直流电动机的转速有以下公式: n=U/Cc-TR内/CrCc其中:U电压;励磁绕组本身的电阻;每极磁通(Wb);Cc电势常数;Cr转矩常量。由上式可知,直流电机的速度控

5、制既可采用电枢控制法,也可采用磁场控制法。磁场控制法控制磁通,其控制功率虽然较小,但低速时受到磁极饱和的限制,高速时受到换向火花和换向器结构强度的限制,而且由于励磁线圈电感较大,动态响应较差。所以在工业生产过程中常用的方法是电枢控制法。图1-1 直流电机的工作原理图电枢控制是在励磁电压不变的情况下,把控制电压信号加到电机的电枢上,以控制电机的转速。在工业生产中广泛使用其中脉宽调制(PWM)应用更为广泛。脉宽调速利用一个固定的频率来控制电源的接通或断开,并通过改变一个周期内“接通”和“断开”时间的长短,即改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速,因此,PWM又

6、被称为“开关驱动装置”。 图1-2电枢电压占空比和平均电压的关系图根据上图,如果电机始终接通电源时,电机转速最大为,占空比为D=/T,则电机的平均速度为:,可见只要改变占空比D,就可以得到不同的电机速度,从而达到调速的目的。12直流调速系统实现方式PWM为主控电路的调速系统:基于单片机类由软件来实现PWM,在PWM调速系统中占空比D是一个重要参数在电源电压不变的情况下,电枢端电压的平均值取决于占空比D的大小,改变D的值可以改变电枢端电压的平均值从而达到调速的目的。改变占空比D的值有三种方法: A、定宽调频法:保持不变,只改变t,这样使周期(或频率)也随之改变。(图1-2)B、调宽调频法:保持t

7、不变,只改变,这样使周期(或频率)也随之改变。(图1-2)C、定频调宽法:保持周期T(或频率)不变,同时改变和t。(图1-2)前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用定频调宽法来改变占空比从而改变直流电动机电枢两端电压。1.3 89C51单片机图 1-3 89C51单片机2 硬件电路设计2.1 pwm波的实现随计算机技术及电力电子技术的发展,PWM波形采用软件方法实现显得非常灵活和实用,以89C51单片机为控制核心,晶振频率为12MHz定时计数器TO,T1作定时器使用,工作在方式1,定时时间为0.1ms,若PWM波形的频

8、率为50 Hz ,占空比为1:1,则和 R0载入30H和31H单元的值初始100,若在程序中利用按键产生中断调用来改变30H和31H单元的值就可以改变占空比.系统流程图如图2-1所示:图 2-1程序流程图2.2直流电动机驱动在直流电动机的驱动中对大功率的电动机常采用IGBT作为主开关元件,对中小功率的电机常采用功率场效应管作为主开关元件.另外还可以采用集成电路来完成对电机的驱动,系统采用集成电路L298来驱动电机图2-2 L298内部结构和功能引脚图L298是双H高电压大电流功率集成电路.直接采用 L逻辑电平控制,可以驱动继电器、直流电动机、步进电动机等电感性负载。其内部有两个完全相同的功率放

9、大回路。其内部结构和引脚功能如图2-2所示。L298 引脚符号及功能SENSA、SENSB:分别为两个H桥的电流反馈脚,不用时可以直接接地ENA 、ENB:使能端,输入PWM信号 IN1、IN2、IN3、IN4:输入端,TTL逻辑电平信号OUT1、OUT2、OUT3、OUT4:输出端,与对应输入端同逻辑VCC:逻辑控制电源,4.57V GND:地VSS:电机驱动电源,最小值需比输入的低电平电压高当使能端为高电平时,输入端IN1为PWM信号,IN2为低电平信号时,电机正转;输入端IN1为低电平信号,IN2为PWM信号时,电机反转;IN1与IN2相同时,电机快速停止。当使能端为低电平时,电动机停止

10、转动。五、硬件图六、程序框图1、主程序框图2、中断服务程序框图七、程序#include#define uchar unsigned charuchar TABLE10=0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90;unsigned int frq1,c;void delay(unsigned int k)unsigned int i,j;for(i=0;ik;i+) for(j=0;j121;j+);void display()uchar qian,bai,shi,ge;qian=0;bai=0;shi=0;ge=0;c=frq1;qian

11、=c/1000;bai=c/100%10;shi=c/10%10;ge=c%10;P1=0x01;P2=TABLEqian;delay(5);P1=0x02;P2=TABLEbai;delay(5);P1=0x04;P2=TABLEshi;delay(5);P1=0x08;P2=TABLEge;delay(5);void chang(void) interrupt 0 using 0if(INT0=0)while(!INT0)frq1+;void main()unsigned int i=0;while(1)TMOD=0x01;TH0=55536/256;TL0=55536%256;TR0=1

12、;EA=1;EX0=1;while(TF0=1) i+;if(i=10) display();frq1=0;TF0=0;调速程序#includereg51.h#includeintrins.h#define uchar unsigned char#define uint unsigned intsbit P20=P20;sbit P21=P21;uchar flag=0;/*高低电平标志*/bit direction=0;/*方向标志*/static uchar constant=1;/可以改变占空比void time0(void) interrupt 1 using 1 static uchar i;i+;/*频率为固定的1kHZ左右,只是占空比发生变化*/if(i=constant)flag=1;if(iconstant)flag=2; if(i=10) i=0;TH0=0X9C;TL0=0X9C;/*改变转向标志*/void int1_srv (void) interrupt 2 using 2if(INT1=0) while(!INT0);constant-;if(constant=10)constant=0;/*中断,调节占空比*/

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1