分享
2023年基于单片机AT89C51控制的直流电机PWM调速控制系统课程设计报告.doc
下载文档

ID:483963

大小:241KB

页数:7页

格式:DOC

时间:2023-04-03

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023 基于 单片机 AT89C51 控制 直流电机 PWM 调速 控制系统 课程设计 报告
第一章:前言 1.1 前言: 直流电机的定义:将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。 近年来,随着科技的进步,直流电机得到了越来越广泛的应用,直流具有优良的调速特性,调速平滑,方便,调速范围广,过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速起动、制动和反转,需要满足生产过程自动化系统各种不同的特殊要求,从而对直流电机提出了较高的要求,改变电枢回路电阻调速、改变电压调速等技术已远远不能满足现代科技的要求,这是通过PWM方式控制直流电机调速的方法就应运而生。 采取传统的调速系统主要有以下的缺陷:模拟电路容易随时间飘移,会产生一些不必要的热损耗,以及对噪声敏感等。而用PWM技术后,防止上述的缺点,实现了数字式控制模拟信号,可以大幅度减低本钱和功耗。并且PWM调速系统开关频率较高,仅靠电枢电感的滤波作用就可以获得平滑的直流电流,低速特性好;同时,开关频率高,快响应特性好,动态抗干扰能力强,可获很宽的频带;开关元件只需工作在开关状态,主电路损耗小,装置的效率高,具有节约空间、经济好等特点。 随着我国经济和文化事业的开展,在很多场合,都要求有直流电机PWM调速系统来进行调速,诸如汽车行业中的各种风扇、刮水器、喷水泵、熄火器、反视镜、宾馆中的自动门、自动门锁、自动窗帘、自动给水系统、柔巾机、导弹、火炮、人造卫星、宇宙飞船、舰艇、飞机、坦克、火箭、雷达、战车等场合。 1.2本设计任务: 任务: 单片机为控制核心的直流电机PWM调速控制系统 设计的主要内容以及技术参数: 功能主要包括: 1) 直流电机的正转; 2) 直流电机的反转; 3) 直流电机的加速; 4) 直流电机的减速; 5) 直流电机的速度在数码管上显示; 6) 直流电机的启动; 7) 直流电机的停止; 第二章:总体设计方案 1、系统的硬件电路设计与分析 电动机PWM驱动模块的电路设计与实现具体电路见以下列图。本电路采用的是基于PWM原理的H型桥式驱动电路。 PWM电路由复合体管组成H型桥式电路构成,四局部晶体管以对角组合分为两组:根据两个输入端的上下电平决定晶体管的导通和截止。4个二极管在电路中起防止晶体管产生反向电压的保护作用,防止电动机两端的电流和晶体管上的电流过大的保护作用。 在实验中的控制系统电压统一为5v电源,因此假设复合管基极由控制系统直接控制,那么控制电压最高为5V,再加上三极管本身压降,加到电动机两端的电压就只有4V左右,严重减弱了电动机的驱动力。基于上述考虑,我们运用了TLP521-2光耦集成块,将控制局部与电动机的驱动局部隔离开来。输入端各通过一个三极管增大光耦的驱动电流;电动机驱动局部通过外接12V电源驱动。这样不仅增加了各系统模块之间的隔离度,也使驱动电流得到了大大的增强。 在电动机驱动信号方面,我们采用了占空比可调的周期矩形信号控制。脉冲频率对电动机转速有影响,脉冲频率高连续性好,但带带负载能力差脉冲频率低那么反之。经实验发现,当电动机转动平稳,但加负载后,速度下降明显,低速时甚至会停转;脉冲频率在10Hz以下,电动机转动有明显跳动现象。而具体采用的频率可根据个别电动机性能在此范围内调节。通过P2.6输入高电平信号,P2.7输入低电平,电机正转;通过P2.6输入低电平信号,P2.7输入高电平,电机反转;P2.6、P2.7同时为高电平或低电平时,电机不转。通过对信号占空比的调整来对电机转速进行调节。 2、系统的软件设计 本系统编程局部工作采用KELI-C51语言完成,采用模块化的设计方法,与各子程序做为实现各局部功能和过程的入口,完成键盘输入、按键识别和功能、PWM脉宽控制和数码管显示等局部的设计。 单片机资源分配如下表: P1 显示模块接口 键盘中断 P3 键盘模块接口 P2.6/P2.7 PWM电机驱动接口 系统时钟 ①PWM脉宽控制:本设计中采用软件延时方式对脉冲宽度进行控制,延时程序函数如下: /xxxxxxxxxxxxxxxxx延时函数xxxxxxxxxxxxxxxxxxxxxxxxx/ void delay() { int i,y; for(i=0;i<30;i++) for(y=0;y<100;y++); } 3、软件设计中的特点: 对于电机的启停,在PWM控制上使用渐变的脉宽调整,即开启后由停止匀加速到默认速度,停止那么由于当前速度逐渐降至零。这样有利于保护电机。键盘处理上采用中断方式,不必使程序对键盘反复扫描,提高了程序的效率。 第三章:系统硬件电路设计 整体框图如下: 第四章:系统功能调试 仿真整体图如下: 1、加减速分5档,波形依次如下: /xxxxxxxxxxxxxxx基于单片机AT89C51的直流电机PWM调速控制系统xxxxxxxxxxxxx/ /xxxxxxxxxxxxxxx班级:09电气六(2)xxxxxxxxxxxxxxxxxxxxxxxxxxxx/ /xxxxxxxxxxxxxxx指导老师:唐幼君 陈弢xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ /xxxxxxxxxxxxxxx时间:2013年9月22日xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ /xxxxxxxxxxxxxxx头文件xxxxxxxxxxxxx/ #include<reg51.h> /xxxxxxx延时xxxxxx/ void delay() { int i,y; for(i=0;i<30;i++) for(y=0;y<100;y++); } /xxxxxxx数码管显示xxxxxxx/ void suzi(int i) { if(i==0) P1=0x0A0; if(i==1) P1=0x0F9; if(i==2) P1=0x64; if(i==3) P1=0x070; if(i==4) P1=0x39; if(i==5) P1=0x32; } /xxxxxxx主程序xxxxxxxxx/ void main() { int x; int i=0; int zen=1; 正反转 zen为1正传zen为0反转 P2=0x00; 初始化 P1=0x00; while(1) { while(zen==1) { if(P3==0x0fd) 检测有无减速按钮按下 i--; if(P3==0x0fe) 检测有无加速按钮按下 i++; if(i==6) i=5; if(i==-1) i=0; suzi(i); 数码管显示 if(P3==0x0fb) 检测有无反转按钮按下 zen=0; for(x=i;x>0;x--) { P2=0x40; delay(); } for(x=5-i;x>0;x--) { P2=0x00; delay(); } } while(zen==0) { if(P3==0x0fd) 检测有无减速按钮按下 i--; if(P3==0x0fe) 检测有无加速按钮按下 i++; if(i==6) i=5; if(i==-1) i=0; suzi(i); 数码管显示 if(P3==0xf7) 检测有无正转按钮按下 zen=1; for(x=i;x>0;x--) { P2=0x80; delay(); } for(x=5-i;x>0;x--) { P2=0x00; delay(); } } } } 元件 数量〔个〕 元件 数量〔个〕 光电耦合器:TLP521-2 1 三极管8550 4 按键 4 三极管8050 4 1N4007 4 At89c51 1 共阳数码管 1 12M晶振 1 电容104 1 直流电机 1 电阻1K 3 电容22P 2 电阻10K 1 电解电容47P/16V 2 分工:凌超:程序编程,元件选型,后期调试。 程杰:PCB排版,焊接。

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开