#include
#define unchar unsigned char
#define unint unsigned int
#define SW1 0x2e
#define SW2 0x2d
#define SW3 0x2b
#define SW4 0x27
#define SW5 0x0f
#define ZHENGZHUAN 0
#define FANZHUAN 1
#define TINGZHI 2
#define JIASU 3
#define JIANSU 4
unsigned char code dispcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x84,0xff,0xf7};//显示代码unsigned char dispbitcode[]={0x7f,0xbf,0xdf,0xef};//位选口
unsigned char dispbuf[4]={0,0,0,0};
unsigned char dispbitcnt;
unint i;
unchar tp=0;
unint count=0;
unint n=0;
unint xs;
unint m;
unchar keyvalue;
sbit p07=P0^7;
sbit P30=P3^0;
sbit P31=P3^1;
sbit P37=P3^7;
sbit P10=P1^0;
sbit P11=P1^1;
sbit P12=P1^2;
sbit P13=P1^3;
sbit P15=P1^5;
void ledshow();
unsigned char keyscan();
void delay();
void zhengzhuan();
void fanzhuan();
void tingzhi();
void jiasu();
void jiansu();
void t0(void);
void INT_0(void);
void Timer_1(void);
//主程序
void main(void)
{
P30=1;
P31=0;
TMOD=0x12;//内部中断定时器选择
TH0=0x66;//50ms定时
TL0=0x50;
EA=1;//开中断总开关
ET0=1;//开内部中断0
ET1=1;//开内部中断1
TR0=1;//定时器开始工作
TR1=1;//计时器开始工作
IT0=1;//外部中断0为下降沿触发
EX0=1;//开外部中断0
while(1)
{
ledshow();//数码管显示
keyvalue=keyscan();//键盘扫描
switch(keyvalue)
{
case ZHENGZHUAN://正转模块
zhengzhuan();
break;
case FANZHUAN://反转模块
fanzhuan();
break;
case TINGZHI://停止模块
tingzhi();
break;
case JIASU://加速模块
jiasu();
break;
case JIANSU://减速模块
jiansu();
break;
default: break;
}
}
}
//延时20ms程序
void delay()
{
unsigned char i,j;
for(i=1;i<=125;i++)
for(j=1;j<=50;j++)
{}
}
//键盘扫描程序
unsigned char keyscan()
{
unchar temp=0;
P1=0xff;
if((P1&0x2f)!=0x2f)
{
delay();
if((P1&0x2f)!=0x2f) {
temp=P1&0x2f;
switch(temp)
{
case SW1:
return 0;
break;
case SW2:
return 1;
break;
case SW3:
return 2;
break;
case SW4:
return 3;
break;
case SW5:
return 4;
break;
default:break; }
}
}
while((P1&0x2f)!=0x2f);
}
//数码管显示程序
void ledshow()
{
P2|=0xf0;
P0=dispcode[dispbuf[0]];
P2=0xef;
for(i=0;i<700;i++);
P2|=0xf0;
P0=dispcode[dispbuf[1]];
P2=0xdf;
p07=0;
for(i=0;i<700;i++);
P2|=0xf0;
P0=dispcode[dispbuf[2]];
P2=0xbf;
for(i=0;i<700;i++);
P2|=0xf0;
P0=dispcode[dispbuf[3]];
P2=0x7f;
for(i=0;i<700;i++);
dispbuf[3]=xs/1000;
dispbuf[2]=(xs%1000)/100;
dispbuf[1]=(xs%100)/10;
dispbuf[0]=xs%10;
}
//中断服务程序
//pWM调速脉冲中断程序
void t0(void)interrupt 1 using 0 {
if(count>100)
count=0;
if(count>tp)
P37=0;
else P37=1;
count++;
}
//外部中断0计数程序
void INT_0(void) interrupt 0 {
EX1=0;//关外部中断0
n++;//转圈计数加1
EX1=1;//开外部中断0
}
//内部中断1计时计数程序
void Timer_1(void) interrupt 3 {
TH1=0x65;//50ms定时
TL1=0xF3;
m++;
if(m==20)//50*20=1S
{
xs=(n*10)/4;
m=0;
n=0;
}
}
//模块程序
void zhengzhuan()
{
P30=1;
P31=0;
}
void fanzhuan()
{
P30=0;
P31=1;
}
void tingzhi()
{
P30=0;
P31=0;
}
void jiasu()
{
if(tp>99)
tp=100;
else tp=tp+2;
}
void jiansu()
{
if(tp<1)
tp=0;
else tp=tp-2;
}
电力电子与电机拖动综合课程设计 题目: PWM控制直流电机的系统 专业: 05自动化 学号: 200510320219 姓名:张建华 完成日期: 指导教师:李晓高
电力电子与电机拖动综合课程设计任务书 班级:自动化05 姓名:张建华指导老师:2008年6月10日 年月日
目录
1 引言 直流电机由于具有速度控制容易,启、制动性能良好,且在宽范围内平滑调速等特点而在冶金、机械制造、轻工等工业部门中得到广泛应用。直流电动机转速的控制方法可分为两类,即励磁控制法与电枢电压控制法。励磁控制法控制磁通,其控制功率虽然小,但低速时受到磁饱和的限制,高速时受到换向火花和换向器结构强度的限制;而且由于励磁线圈电感较大,动态响应较差。所以常用的控制方法是改变电枢端电压调速的电枢电压控制法。调节电阻R即可改变端电压,达到调速目的。但这种传统的调压调速方法效率低。随着电力电子技术的进步,发展了许多新的电枢电压控制方法,其中PWM(脉宽调制)是常用的一种调速方法。其基本原理是用改变电机电枢(定子)电压的接通和断开的时间比(占空比)来控制马达的速度,在脉宽调速系统中,当电机通电时,其速度增加;电机断电时,其速度减低。只要按照一定的规律改变通、断电的时间,即可使电机的速度达到并保持一稳定值。最近几年来,随着微电子技术和计算机技术的发展及单片机的广泛应用,使调速装置向集成化、小型化和智能化方向发展。 本电机调速系统采用脉宽调制方式, 与晶闸管调速相比技术先进, 可减少对电源的污染。为使整个系统能正常安全地运行, 设计了过流、过载、过压、欠压保护电路, 另外还有过压吸收电路。确保了系统可靠运行。 2 系统概述 2.1 系统构成 本系统主要有信号发生电路、PWM速度控制电路、电机驱动电路等几部分组成。整个系统上采用了转速、电流双闭环控制结构,如图1所示。在系统中设置两个调节器,分别调节转速和电流,二者之间实行串级连接,即以转速调节器
实用标准文案 目录 1 总体设计框 架 (3) 2 硬件电路设 计 (4) 2.1 芯片介 绍 (4) 2.2 驱动电 路 (9) 2.3 按键控制电 路 (10) 3 程序编写 ................................................. 10 3.1 工作原 理 (10) 21程序书写过程 3.2 ...................................................... 参考资 料 (16) 精彩文档. 实用标准文案 直流电机驱动 Abstract 摘要:本文主要内容是利用PIC18F452单片机来控制直流电机,通过L293NE来驱动电机,通过按键来使其正转,反转。Keywords 关键词:直流电机,PWM,L293NE 精彩文档. 实用标准文案
总体设计框架1硬件电路利用驱动芯片L293D来驱动直流电机,按键则是单独引出。如图1所示。软件则是C语言编程。 PI驱C直动1流8电电F路机452 图1硬件设计框精彩文档. 实用标准文案 2硬件电路设计 2.1 芯片介绍 首先,总体说明硬件电路设计,如图2 原理图,图3 PCB图以及图4板子的图所示。三个输入信号,如图分别为RD4,RD5,RD6连上光耦的2脚,然后通过光耦的4脚引入L293D的使能引脚(12EN)以及输入引脚(1A,2A),然后L293D的输出引脚(1Y,2Y)通过H-桥型控制电路与直流电机连接。 图2 直流电机控制部分原理图 精彩文档. 实用标准文案 PCB图图3直流电机控制部分 成品板图4 其中红线圈表示直流电机控制部分。下面详细介绍各个芯片。PIC18F452
中国地质大学长城学院 本科课程设计题目:基于80C51单片机的步进电机控制系统 系别信息工程系 学生姓名 专业电气工程及其自动化 学号 指导教师 职称讲师 2014 年6 月11 日
摘要 本文研究基于51系列单片机的步进电机控制系统设计,该系统包括以下几个部分:数据采集、数据处理、终端接收,该系统以汇编语言为单片机的驱动程序语言,单片机控制步进电机,主要任务是把二进制数变成脉冲序列,按相序输入脉冲以实现电机转动方向控制,利用单片机实现对步进电机的远距离实时监控,从而达到高效、节能的控制步进电机工作的目的,该系统具有成本低、控制方便的特点。使用单片机驱动四相步进电机,控制步进电机以四相八拍的方式运行,来实现步进电机正向/反向旋转,P1.0~P1.3分别控制步进电机;P1.5~P1.7分别控制步进电机的停止、正转、反转。 关键词:51单片机;步进电机;数据采集;汇编语言;
目录 摘要 0 1 设计目的 (1) 2设计内容与要求 (1) 3 总体设计方案 (1) 3.1整体方案 (1) 3.2具体方案实现 (1) 4系统硬件设计 (2) 4.1复位电路 (2) 4.2晶振电路 (2) 4.3按键电路 (3) 4.4指示灯电路 (3) 4.5驱动电路 (4) 4.6步进电机 (4) 5程序软件设计 (5) 5.1程序流程图 (5) 5.2源程序 (6) 6系统调试与仿真 (7) 7总结 (8)
1设计目的 1.掌握单片机控制步进电机的硬件接口电路。 2.掌握步进电机驱动程序的设计和调试方法。 3.熟悉步进电动机的工作特性。 2设计内容与要求 1.查阅资料,了解步进电机的工作原理。 2.通过单片机给定参数控制电机转动。 3.通过按钮控制正转、反转和停止。 3总体设计方案 3.1整体方案 本系统主要是由AT89C51,步进电机控制器ULN2004,步进电机,通过单片机编程,实现步进电机控制的脉冲分配,使电机实现正转,反转以及停止等功能 3.2具体实现方案 根据系统要求画出单片机控制步进电机的控制框图,见下图。系统包括单片机、按键、驱动电路和步进电机。 键盘80c51单片机 步进电机 驱动电路
目录 摘要............................................................................................................................................................... I I ABSTRACT ................................................................................................................................................. III 1系统论述 (5) 1.1设计思路 (5) 1.2基本原理 (5) 1.3总体设计框图 (5) 2直流电机单元电路设计与分析 (6) 2.1直流电机驱动模块 (6) 2.2直流电机的中断键盘控制模块 (11) 2.31602LCD液晶显示模块 (13) 3直流电机PWM控制系统的实现 (15) 3.1总电路图 (15) 3.2总电路功能介绍 (16) 3.3直流电机控制程序 (16) 4系统仿真 (23) 5结束语 (26) 参考文献资料 (27)
摘要 本文是对直流电机PWM调速器设计的研究,主要实现对电机的控制。本课程设计主要是实现PWM调速器的正转、反转、加速、减速、停止等操作。并实现电路的仿真。为实现系统的微机控制,在设计中,采用了AT89C51单片机作为整个控制系统的控制电路的核心部分,配以各种显示、驱动模块,实现对电动机转速参数的显示和测量;由命令输入模块、光电隔离模块及H型驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,不断给光电隔离电路发送PWM 波形,H型驱动电路完成电机正反转控制.在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。 关键词:AT89C51单片机;PWM调速;正反转控制;仿真。
基于单片机对直流电机的控制 第十五组 姓名:吴代露20131325010 张鹏飞20131325012 金静丽20131325014 周敏20131325015 胡会华20131325017 顾蓉20131325018 专业:2013级信息工程(系统工程方向) 指导老师:周旺平 2014.12.22
基于单片机对直流电机的控制 内容摘要 电动机作为最主要的动力源,在生产和生活中占有重要地位。电动机的调速控制过去多用模拟法,随着计算机的产生和发展以及新型电力电子功率器件的不断涌现,电动机的控制也发生了深刻的变化。 关键字:电动机飞思卡尔 PWM控制 一、引言 (一)直流电机的定义 直流电机(direct current machine):是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。 (二)直流电机的基本结构 由直流电动机和发电机工作原理示意图可以看到,直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。 (三)直流电机工作原理
直流电机里边固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。直流发电机的工作原理就是把电枢线圈中感应的交变电动势,靠换向器配合电刷的换向作用,使之从电刷端引出时变为直流电动势的原理。感应电动势的方向按右手定则确定(磁感线指向手心,大拇指指向导体运动方向,其他四指的指向就是导体中感应电动势的方向)。导体受力的方向用左手定则确定。这一对电磁力形成了作用于电枢一个力矩,这个力矩在旋转电机里称为电磁转矩,转矩的方向是逆时针方向,企图使电枢逆时针方向转动。如果此电磁转矩能够克服电枢上的阻转矩(例如由摩擦引起的阻转矩以及其它负载转矩),电枢就能按逆时针方向旋转起来。 (四)直流电机的分类 直流电动机按结构及工作原理可划分:无刷直流电动机和有刷直流电动机。(1)无刷直流电动机:无刷直流电动机是将普通直流电动机的定子与转子进行了互换。其转子为永久磁铁产生气隙磁通:定子为电枢,由多相绕组组成。在结构上,它与永磁同步电动机类似。无刷直流电动机定子的结构与普通的同步电动机或感应电动机相同.在铁芯中嵌入多相绕组(三相、四相、五相不等).绕组可接成星形或三角形,并分别与逆变器的各功率管相连,以便进行合理换相。由于电动机本体为永磁电机,所以习惯上把无刷直流电动机也叫做永磁无刷直流电动机。 (2)有刷直流电动机:又可分为永磁直流电动机和电磁直流电动机。 永磁直流电动机划分:稀土永磁直流电动机、铁氧体永磁直流电动机和铝镍钴永磁直流电动机。稀土永磁直流电动机:体积小且性能更好,但价格昂贵,主要用于航天、计算机、井下仪器等;铁氧体永磁直流电动机:由铁氧体材料制成的磁极体,廉价,且性能良好,广泛用于家用电器、汽车、玩具、电动工具等领域;铝镍钴永磁直流电动机:需要消耗大量的贵重金属、价格较高,但对高温的适应性好,用于环境温度较高或对电动机的温度稳定性要求较高的场合。 电磁直流电动机划分:串励直流电动机、并励直流电动机、他励直流电动机和复励直流电动机。 (1)串励直流电动机:电流串联,分流,励磁绕组是和电枢串联的,直流串励电
直流电机控制系统设计
XX大学 课程设计 (论文) 题目直流电机控制系统设计 班级 学号 学生姓名 指导教师
沈阳航空航天大学 课程设计任务书 课程名称专业基础课程设计 院(系)自动化学院专业测控技术与仪器 班级学号姓名 课程设计题目直流电机控制系统设计 课程设计时间: 2012年7 月9 日至2012年7 月20 日 课程设计的内容及要求: 1.内容 利用51单片机开发板设计并制作一个直流电机控制系统。系统能够实时控制电机的正转、反转、启动、停止、加速、减速等。 2.要求 (1)掌握直流电机的工作原理及编程方法。 (2)掌握直流电机驱动电路的设计方法。 (3)制定设计方案,绘制系统工作框图,给出系统电路原理图。 (4)用汇编或C语言进行程序设计与调试。 (5)完成系统硬件电路的设计。 (6)撰写一篇7000字左右的课程设计报告。 指导教师年月日 负责教师年月日
学生签字年月日 目录 0 前言 (1) 1 总体方案设计 (2) 1.1 系统方案 (2) 1.2 系统构成 (2) 1.3 电路工作原理 (2) 1.4 方案选择 (3) 2 硬件电路设计 (3) 2.1 系统分析与硬件设计 (3) 2.2 单片机AT89C52 (3) 2.3 复位电路和时钟电路 (4) 2.4 直流电机驱动电路设计 (4) 2.5 键盘电路设计 (4) 3软件设计 (5) 3.1 应用软件的编制和调试 (5) 3.2 程序总体设计 (5) 3.3 仿真图形 (7) 4 调试分析 (9) 5 结论及进一步设想 (9) 参考文献 (10) 课设体会 (11) 附录1 电路原理图 (12) 附录2 程序清单 (13)