根据proteus仿真的pwm电机调速
基于Proteus的直流电机闭环调速系统设计
摘要在工业自动控制系统和各种智能产品中常常会用用电动机进行驱动、传动和控制,而现代智能控制系统中,对电机的控制要求越来越精确和迅速,对环境的适应要求越来越高。
本设计以AT89C51单片机为核心,基于Proteus单片机仿真软件,完成了直流电机的转速自动测量及转速调节功能。
在设计中采用PWM技术和PID控制技术对电机进行控制,并且利用数码管设计的人机界面系统显示转速的设定值及实际值,通过应用PID算法对占空比的计算达到精确调速的目的。
还利用了Visual Basic6.0编程软件编写了一个简单的上位机软件,显示实际转速的变化情况,对PID参数的整定提供依据。
关键词:Proteus,AT89C51,PID,PWM调速,Visual Basic 6.0目录第一章绪论 (1)1.1 直流电机闭环调速系统背景 (1)1.2 本设计实现的基本功能 (1)1.3设计目的及意义 (1)第二章总体规划 (2)2.1 直流电机控制原理及特点 (2)2.2 直流电机调速控制方式选择 (2)2.3 PWM脉宽调制方式 (3)2.4 电机实际转速的获取 (3)2.5总体设计框图 (4)2.6 上位机界面设计 (4)第三章硬件设计 (5)3.1 AT89C52芯片介绍 (6)3.2 电机驱动电路设计 (7)3.3 按键模块设计 (7)3.4 数码管显示模块设计 (8)3.5 串口电路设计 (8)第四章软件设计 (9)4.1 主程序 (9)4.2 定时器0中断服务程序 (10)4.3 PID控制输出程序 (10)第五章硬件与软件联合调试5.1 运行时速度设定值与实际值 (12)5.2 运行时直流电机转动情况 (12)5.3 运行时上位机运行情况 (12)参考文献 (13)致谢 (14)附录 (15)第一章绪论1.1直流电机闭环调速系统背景对直流电机转速的控制即可采用开环控制,也可采用闭环控制。
与开环控制相比,速度控制闭环系统的机械特性有以下优越性:闭环系统的机械特性与开环系统机械特性相比,其性能大大提高;理想空载转速相同时,闭环系统的静差率(额定负载时电机转速降落与理想空载转速之比)要小得多;当要求的静差率相同时, 闭环调速系统的调速范围可以大大提高。
基于Proteus的单片机PWM直流电机速度控制系统设计
5
高继 宁 , 赵建平.孙郁 芝肾病临证经验集 [ M] .北京 : 科 学 出版 社 ,2 0 1 1 .2 3 4 .
究 。E m a i l :1 6 3 q z j @1 6 3 . C O n。 r
第 3期
2 3
4
朱
毛 :益 肾活血方治疗糖尿病 肾病 6 0例 临床 观察
・7 9・
58 6. 王 吉耀. 内科学 [ M] .北京 :人 民卫生 出版社 ,2 0 0 5 .
本 方案 以 A T 8 9 C 5 1单 片机 为 控制 器 ,将 单 片 机产 生 的控制 信号加在 电机 驱动 H 模块 I 2 9 8芯 片
就是对脉冲的宽度进行调制的技术。P WM控制技
收 稿 日期 :2 0 1 3—5—1 2
通讯作者 :乔志杰 ( 1 9 8 3一) ,男,安徽 电子信 息职 业技术 学院 ,讲师 ,工学硕士,主要从事电气 自动化方 面的教 学与研
脉宽 调 制 ( P u l s e Wi d t h Mo d u l a t i o n , P WM)
图 1 周期性 P W M 矩 形 脉 冲
: ,
若 令 : 每
则上式可化为 :U o = O / × U( u为脉 冲幅值 ) O t 即为 占空 比,由上式可知 ,要改变直 流输 出电压的大小 ,可以通过改变脉冲幅值 和占空 比 来实现 ,实际应用 中脉冲幅值通常是不变 的, 所 以可 以通过 控 制 占空 比 的大 小 实 现 直 流输 出 电压在 0~U之 间 的有 效控制 ,也就 是改 变 电机 电 枢 ( 定 子 ) 电压 的 接 通 和 断 开 的 时 间 比 ( 占空 比) 以达到变压 目的,从而利用 P WM控制技术实 现对直 流 电机 转速 的调节 。 3系统 设计 3 . 1总体 方案 的确定
基于Proteus的直流电机PWM调速系统研究
V0 1 . 2 1
No . 1 5
电子设 计 工程
El e c t r o ni c De s i g n En g i n e e
2 0 1 3年 8月
Au g .2 01 3
基于 P r o t e u s的直 流 电机 P WM 调 速 系统研 究
Y U A N Z h a n - j u n
( D e p a r t m e n t o fE l e c t r o n i c s , S h a a n x i I n s t i t u t e fI o n t e r n a t i o n a l T r a d e&C o mm e r c e , X i a n y a n g 7 1 2 46 0 , C h i n a )
d e b u g g i n g i s c o mp l e t e d b y u s i n g P r o t e u s s o f t wa r e . he T e x p e r i me n t a l r e s u l t s s h o w t h a t t h i s P W M r e g u l a t i n g s p e e d s y s t e m o f DC
设计方案 。 系统 以 A T 8 9 S 5 1单 片机 为 核 心 , 利 用 AD C 0 8 0 8采样 直 流 电机 占空 比设 定值 . 运 用脉 宽调 制 技 术 控 制 P wM 波输 出占空比 o . r , 完 成 直 流 电机 的 转 速 调 节 。 利用P r o t e u s软 件 进 行 了仿 真 调 试 , 结果表明所设计的直流电机 P WM 调 速 系 统 具 有 较 高 的控 制 精 度 和 较 快 的 动 态 响 应 速 度 ; 并且 P r o t e u s 仿 真技术的运 用, 可 有 效 地 降 低 系统 开发 成 本 , 缩
PROTUES课程设计-直流电动机调速器-单片机89C51-Keil---Proteus
1 引言随着微电子技术的不断发展与进步,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成CPU、存储器、定时器/计数电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。
在现代工业中,直流电动机作为电能转换的传动装置,被广泛应用于机械、冶金、石油、化工、国防等工业部门中。
直流电动机是将直流电能转换为机械能的电动机。
因其良好的调速性能而在电力拖动中得到广泛应用。
随着对生产工艺、产品质量的要求不断提高和产量的增长,越来越多的生产机械要求能实现自动调速。
直流调速系统的发展得力于微电子技术、电力电子技术、传感器技术、永磁材料技术、自动控制技术和微机应用技术的最新发展成就。
正是这些技术的进步使直流调速系统发生翻天覆地的变化。
其中电机的控制部分已经由模拟控制逐渐让位于以单片机为主的微处理器控制,形成数字与模拟的混合控制系统和纯数字控制系统,并向全数字控制方向快速发展。
本文设计了用DAC0808设计直流电动机调速器的基本方案,阐述了该调速器系统的基本结构、工作原理、运行特性及其设计方法。
本系统用电压表测量直流电动机的转速,用MCS-51单片机输出数字信号通过DAC0808芯片实现数模转换,从而输出模拟电压来控制调节直流电动机的转速。
本设计主要研究利用单片机及DAC0808实现数模转换调速,直流电机的控制和测量方法,从而对直流电机的调速控制精度、响应速度以及节约能源等都具有重要意义。
2 设计总体方案2.1 设计要求基本要求:使用AT89C51单片机为核心,使用数模转换元件DAC0808对单片机输出的数字信号进行转换,输出模拟信号驱动直流电动机。
具体要求:在设计中,设计8个按键对应直流电动机的8挡不同转速,按下不同按键时,电动机将以不同速度转动,在8个按键中取一个按键为直流电动机转动停止按键。
8挡不同转速的设定由学生自己决定。
仿真:控制程序在Keil软件中编写,编译,整个控制电路在Proteus仿真软件中连接调示。
基于LabVIEW和Proteus的直流电机调速系统仿真设计
秒的时间内检测到输出脉冲个数为 m, 则可以计算出电机的转
速 n 为:
n=m / pt
(1)
42
基于 LabVIEW 和 Proteus 的直流电机调速系统仿真设计
2.2 单片机软件设计
AT89S52 采 用 C
语言编程, 程序框图
如 3 所示。 系统将采
集到的速度信息传送
给上位机, 上位机软
件 LabVIEW 做 PID
到的数据发送到上位机,P3.0 口和 P3.1 口用于串口连接。
本仿真通过计数编码器 50ms 内输出的脉冲个数来反映 电
机的转动速度,通过 P3.4 口计数编码器产生的脉冲个数。 电路
采用的光电编码器与直流电机一体, 可以看成直流电机和光电
图 2 系统硬件电路图
编码器是同轴传动。 在实际使用中,光电码盘与电动机同轴传动
参考文献 [1]王磊,陶梅.精通 LabVIEW8.0[M].北京:电子工业出版社,2007 [2]雷 振 山 ,魏 丽 ,赵 晨 光 ,等.LabVIEW 高 级 编 程 与 虚 拟 仪 器 工 程 应 用
[M ]. 北 京 :中 国 铁 道 出 版 社 ,2009 [3]郭天祥.51 单片机 C 语言教程[M].北京:电子工业出版社,2009
图 4 LabVIEW 监控界面
3.1 串口模块的参数配置
LabVIEW 中串口通信程序设计是通过 VISA 实现的, 其中
常用的 VISA 模块包括串口初始化、串口写、串口读、串口关闭四
个模块。 使用时,要通过串口初始化模块设置串口通信的串口资
源、波特率、数据位、停止位、奇偶校验等参数,其值应与下位机
Abstract This paper designs a dc motor speed simulation system by LabVIEW and Proteus.Motor's drive and speed's acquisition is finished by single-chip computer,and the hardware circuit is simulated in Proteus,and then realized the communication between MCU and upper computer through virtual serial.LabVIEW implements PID control the received the information from MCU,finally adjust dc motor speed by adjusting PWM waves occupies output the AT89C52 single chip computer,then achieve the purpose of dc motor speed adjustment. Keywords:DC motor,speed governing system,MCU,LabVIEW,virtual serial
直流电机脉宽调制调速在Proteus中的仿真设计
直流电机脉宽调制调速在Proteus中的仿真设计文章设计了以单片机为核心,直流电动机为执行构件,H桥集成电路L298作为电动机驱动电路的脉宽调制调速系统,并在Proteus软件中进行了仿真。
系统采用PWM对直流电机调速,精度高、范围大、设计简单实用、性能可靠,具有一定的应用价值,而使用Proteus仿真软件也方便教学。
标签:PWM;单片机;Proteus;仿真1 引言脉冲宽度调制是利用数字信号输出对模拟电路进行控制的一种技术,广泛应用于功率控制、通信等领域。
脉宽调制就是按一定的规则对脉冲的宽度进行调制。
PWM的优点其一是从处理器到被控系统信号都是数字形式的,无需进行数模转换,其二是相较于模拟控制对噪声抵抗能力的增强,这是将PWM用于通信的主要原因。
在机电控制系统中,广泛采用PWM技术驱动各类模拟器件,如电动机调速、照明调光等。
要实现PWM可采用专用的集成电路,也可使用集成PWM 功能模块的单片机,或者采用程序控制单片机定时器及通用IO口来实现。
2 系统工作原理分析直流电动机是一个模拟器件,而单片机的输出是数字信号。
要实现单片机对直流电动机转速的控制,可以采用數/模转换电路进行D/A转换,也可以采用脉宽调制的方式实现。
本设计以单片机为控制核心并负责脉宽调制任务,按键作为系统输入,改变单片机输出脉冲的宽度实现对直流电动机速度的调节。
脉宽调制的输出就是不同宽度的脉冲,也就是单片机改变输出的高低电平的时间。
单片机的引脚负载能力极弱,需要功率驱动电路对单片机的输出信号进行放大后,再驱动直流电动机。
需要注意的是要让电动机取得不同转速的效果,必须提高调制频率,通常调制频率为1~200kHz,否则实际效果会是转动一短时间再停止一段时间。
3 硬件电路设计本设计采用脉宽调制的方式实现用按键控制直流电动机的转速,电动机从静止到全速运行分为多个档位。
整个系统硬件电路由单片机最小系统、按键、直流电动机及其驱动电路组成。
在本设计中选择AT89S52单片机芯片为系统控制芯片,系统晶振频率为12MHz。
可逆直流PWM调速控制系统的仿真与设计(电源采用直流电源L298N)
摘要直流电机具有良好的启动性能和调速特性,它的特点是启动转矩大,能在宽广的范围内平滑、经济地调速,转速控制容易,调速后效率很高。
本文设计的直流电机调速系统,主要用proteus仿真,实现电机的加减速和正反转以及控制超调量和稳态误差等要求。
采用L298N芯片来设计电机驱动电路。
用LM331来实现电压频率转换。
在仿真中加上PI调节和三角波比较环节来进行直流PWM调速控制系统。
关键词:直流电机;调速控制系统;驱动电路。
目录摘要 (Ⅰ)目录 (Ⅱ)1前言 (1)2设计基本内容 (1)2.1设计题目 (1)2.2主要内容 (1)2.3具体要求 (1)3电路设计 (2)3.1设计基本框图 (2)3.2电机正反转模块 (2)3.3电机加减速模块 (3)3.4驱动电路模块 (3)3.5频电转换模块 (5)3.6PI调节及三角波比较模块 (7)4仿真结果 (7)5总结体会 (9)参考文献 (10)致谢 (11)仿真原理图 (12)1 前言电动机作为最主要的动力源和运动源之一,在生产和生活中占有十分重要的地位。
电动机的调速控制方法过去多用模拟法,随着单片机的产生和发展以及新型自关断元器件的不断涌现,电动机的控制也发生了深刻的变化。
直流电动机控制技术是一项以直流电动机作为机械本体,融入了电力电子技术、微电子技术、单片机控制技术和传感器技术的多学科交叉机电一体化技术。
单片机在电动机控制中的应用使调速系统具有了数值运算、逻辑判断及信息处理的功能。
自从全控型电力电子器件问世以后,就出现了采用全控型的开关功率元件进行脉宽调制的控制方式,形成了脉宽调制变换器-直流电动机调速系统,简称直流脉宽调速系统,或直流PWM调速系统。
PWM系统在很多方面有较大的优越性:主电路线路非常简单,需要用到的功率器件比较少;开关频率比较高,电机损耗及发热都比较少,电流很容易连续,并且谐波少;功率开关器件工作在开关状态,导通损耗比较小,装置效率比较高;低速性能比较好,调速范围比较宽,稳速精度比较高;若与快速响应的电动机配合,则系统频带宽,动态响应比较快,动态抗干扰能力强;直流电源采用不控整流时,电网功率因数比相控整流器高。
基于.PWM的电机调速系统
基于PWM的电机调速系统实验目的:1.学会并掌握可keil软件的使用;2.学会并掌握protues软件的使用;3.通过实验巩固单片机相关知识和检验自身动手能力实验要求:掌握单片机相关知识,利用调PWM占空比的方式来控制直流电机的转速,并且在led数码管上显示转速。
实验设备和仪器:1.89c51单片机最小系统2.直流电机3.示波器实验内容:本次实验设计是由小组五个成员共同完成基于PWM的电机调速系统并完成实物搭建和撰写实验报告。
本次实验小组共提供了两个方案,方案一和方案二,两个方案各自具有优缺点,详细内容会在下面给出。
方案一实验步骤:1.利用protues画电路图,电路图如图1所示:图1:方案一电路图2.根据电路图编写C语言代码:代码如下:#include <reg51.h>sbit PWM=P2^7;sbit CS3=P2^3;sbit CS2=P2^2;sbit CS1=P2^1;sbit CS0=P2^0;sbit key1=P1^0;sbit key2=P1^1;sbit key3=P1^2;sbit key4=P1^3;unsigned char timer1;unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};void Time1Config();void main(void){Time1Config();while(1){if(timer1>100) //PWM周期为100*0.5ms{timer1=0;}if(~key1){if(timer1 <30) //改变30这个值可以改变直流电机的速度{PWM=1;}else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0;P0=tab[3];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab[0];P0=0xff;}else if(~key2){if(timer1 <50){PWM=1;else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0; P0=tab[5];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab[0];P0=0xff;}else if(~key3){if(timer1 <80){PWM=1;}else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0; P0=tab[8];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab[0];P0=0xff;}else if(~key4){if(timer1 <100){PWM=1;}else{PWM=0;}CS0=0;CS1=1;CS2=0;CS3=0; P0=tab[1];CS0=0;CS1=0;CS2=1;CS3=0;P0=tab[0];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab[0];P0=0xff;}}}void Time1Config(){TMOD|= 0x10; //设置定时计数器工作方式1为定时器//--定时器赋初始值,12MHZ下定时0.5ms--//TH1 = 0xFE;TL1 = 0x0C;ET1 = 1; //开启定时器1中断EA = 1;TR1 = 1; //开启定时器}void Time1(void) interrupt 3 //3 为定时器1的中断号{TH1 = 0xFE; //重新赋初值TL1 = 0x0C;timer1++;}3.实验仿真,部分仿真结果如图2图3所示:图2:仿真结果图(1)图3:仿真结果图(2)4.实物验证结果如图4所示:图4:方案一实物验证结果实物验证可以明显感觉到电机转速的变化,由于每个开发板不同,相比仿真程序,对实物验证程序进行了略微的修改,最终能达到要求。
基于Proteus仿真的直流电机调速设计
I Q ( ) : ( i — i o ) / K o { ( ) = K I 口 ( , ) 一 ( 1 2 ) + i R = O / K v + i R
一
) 去
( 2 )
是一 常数 , 为 电机工作 时内部线圈产生的反 向 电动 势 , 为 电机 端 电压 , 、 分 别为 速度 常数
Pr o t e u s s i mu l a t i o n s o f t wa r e r e li a z e P W M s p e e d c o n t r o l o f DC mo t o r .
Ke y wo r d s :DC mo t o r ;P W M;i n t e l l i g e n t v e h i c l e ;s i mu l a t i o n; DC s p e e d c o n t r o l
摘要 :为 了实现智 能小 车的精确控制 ,分析 了直 流电机模 型及其参数特性 , 讨 论了直流 电机调速方 法 ,在分析 P WM直流 电机
调速实现原理的基础 上,借助 P r o t e u s 仿真软件 实现直 流电机 的P WM调速 。
关键词 : 直 流电机 ;P WM;智能小车 ;仿真 ;直流调速
和 转矩 常数 。设 电机 的转 矩 、转 轴输 出功 率 效 率
分别为 Q 、P 、叼 ,可构建直流 电机模型为 :
数 特性 以及 P WM调速原 理 ,借助于 P r o t e u s 仿真
实现 P WM直 流 电机调 速 。
1 直 流 电机模 型分 析
直 流 电机 由转子 、定 子 、换 向器 等 组成 ,其 等效模 型如图 1 所 示 。 电 阻 R为 转 子 线 圈 内 阻 ,
Proteus仿真环境下的电机调速系统设计
P r o t e u s仿 真环 境 下 的 电机 调 速 系统设 计
王 欣峰 ,任 淑 萍
( 1 . 山西 大 学 自动化 系 , 山 西 太 原 0 3 0 0 1 3 ;2 . 山 西 大 学 电 子 信 息 工 程 系 , 山西 太 原 0 3 0 0 1 3 )
摘 要 :提 出 了一种 在 P r o t e u s环 境 下 的 直 流 电机 P W M 调 速 系 统 的 设 计 方 法 。AT 8 9 C 5 1单 片 机 产 生 占空 比 可 调的P WM 波 形 ,通 过 L 2 9 8 N 来驱 动 直 流 电机 ,独 立 按 键 用 于 设 定 电 机 的 正 反 转 以 及 电机 的启 停 , 利 用 系 统 自带 的 可 实 现 测 速 功 能 的 电机 组 成 直 流 电机 的 闭 环调 速 系 统 。 关 键 词 :P r o t e u s ;直 流 电机 ;调 速 系 统
L 2 9 8 N 内部 包含 4通 道 逻辑 驱 动 电 路 , 其额 定 工 作 电
流为 1 A, 最大可达 1 . 5 A, 可 直 接 对 电机 进 行 控 制 , 无须 隔离 电路 , 且 可 以驱 动 双 电机 。O UT1与 0UT2 之 间 以及 OUT 3与 O UT 4之 间可 分别 接 电机 。
环控 制 系统 。
图 2 直 流 电机 的驱 动 电路
2 . 2 键 盘 电路 设 计
甲
+
[ L 2 9 8 N J
1 .
由于本设 计 中所 用 按键 不 多 , 因 此选 择 独 立 式 按 键, 如 图 3所示 。通 常 机 械 开关 在 按 键 按 下 时 由于 弹 性作 用不可 能一下 稳 定 地 接通 , 同 时 在按 键 释 放 时 也 不 能一下 断 开 , 为了消 除这 种按 键抖 动带 来 的误 操 作 , 必 须应进 行 键盘 去抖 , 本文 采用 软件 去抖 , 当检 测 到有 键 按下 时 , 调 用 软件 延 时 1 0 ms ~2 0 ms , 如 果 再 次 检
直流电机PID转速闭环调速控制系统Proteus仿真实现
基于uC/COS的直流电机PID转速闭环调速控制系统Proteus仿真实现在工业自动控制系统和各种智能产品中常常会用用电动机进行驱动、传动和控制,而现代智能控制系统中,对电机的控制要求越来越精确和迅速,对环境的适应要求越来越高。
随着科技的发展,通过对电机的改造,出现了一些针对各种应用要求的电机,如伺服电机、步进电机、开关磁阻电机等非传统电机。
但是在一些对位置控制要求不高的电机控制系统如传动控制系统中,传统电机如直流电机乃有很大的优势,而要对其进行精确而又迅速的控制,就需要复杂的控制系统。
随着微电子和计算机的发展,数字控制系统应用越来越广泛,数字控制系统有控制精确,硬件实现简单,受环境影响小,功能复杂,系统修改简单,有很好的人机交换界面等特点。
在电机控制系统开发中,常常需要消耗各种硬件资源,系统构建时间长,而在调试时很难对硬件系统进行修改,从而延长开发周期。
随着计算机仿真技术的出现和发展,可用计算机对电机控制系统进行仿真,从而减小系统开发开支和周期。
计算机仿真可分为整体仿真和实时仿真。
整体仿真是对系统各个时间段对各个对象进行计算和分析,从而对各个对象的变化情况有直观的整体的了解,即能对系统进行精确的预测,如Matlab就是一个典型的实时仿真软件。
实时仿真是对时间点的动态仿真,即随着时间的推移它能动态仿真出当时系统的状态。
Proteus是一个实时仿真软件,用来仿真各种嵌入式系统。
它能对各种微控制器进行仿真,本系统即用Proteus对直流电机控制系统进行仿真。
在系统软件开发中开发中可用操作系统,也可不用操作系统。
如用操作系统,程序可实现模块化,并能对系统资源进行统筹管理,最主要的是可实现多任务运行。
如果需要多任务并行运行,并且需要一定的时间间隔,某些任务对时间的要求不高时,如不用操作系统则要占用定时器资源,并且对栈空间和硬件资源很难进行管理,所以在这种情况下需要操作系统。
本系统用操作系统uC/COS.uC/COS是一个完整的、可移植、可固化、可剪裁的占先式实时多任务内核.uC/COS 已经有很多产品成功使用的案例且得到美国军方的认证,说明了该系统的可靠性。
基于Proteus的单片机PWM直流调速系统计
第16卷第4期重庆职业技术学院学报V01.16No,4至QQZ±!旦j垒竖塑型望£堡垒里望99垫gy殳塑堕壁望丛量!!尘世型!堕堕坐堕J尘:至旦鲤基于Proteus的单片机PWM直流调速系统设计周彬(重庆职业技术学院机电工程系,重庆400712)摘要:本文以89C51单片机为控制棱心,以L298为驱动,实现直流电动机的PWM调速,络出了系统的电路原理厦PWM信号产生的方法。
在Proteus软件中仿真实现。
关键词:PWM;L298;Proteus;单片机;调速系统中图分类号:TP39文献标识码:A文章编号:1672-0067(2007)04-0148-02直流电动机具有良好的线性调速特性.简单的控制性能.优异的动态特性.目前仍然是大多数调速控制电动机的最优选择.近年来随着计算机进入控制领域.以及PWM控制方式成为主流.应用单片机技术和脉宽调制技术对直流电动机进行调速控制.是各种智能化产品的首选方案。
如今.计算机软件和硬件技术的快速发展.在许多领域都有成熟的仿真软件在应用。
Labcenter公司推出的Proteus是一套基于标准仿真引擎SPIcE3F5的电路分析、实物仿真系统。
该软件具有交互式动嚼仿真、基于图形的仿真和基于微控制器的仿真三种模式.其最大的特点就在于它能够仿真单片机及其外围芯片.通过Proteus软件仿真.可以更好地帮助学生及工程师运用单片机技术进行计算机控制系统的设计。
1直流电动机的PWM调压调速原理对于直流电机而言.其转速表达式为:一¨器(1)式中。
弘一电枢端电压:Im电枢电流:R--电枢电路总电阻:垂一每极磁通量:尽—一电机结构参数由(1)式可得,直流电动机的调速方法可以分为电枢回路串电阻的调速方法、调节励磁磁通的励磁控制方法和调节电枢电压的电枢控制方法。
在上述三种方法中.电枢回路串电阻后机械特性变软,系统转速受负载波动的影响较大.空载和轻载时能够调速的范围非常有限。
基于Proteus的直流电动机闭环调速系统设计
基于Proteus的直流电动机闭环调速系统设计朱奥辞;赵钢【摘要】控制系统开发过程中,软硬件并行开发能够加快设计过程.Proteus拥有功能强大的元件库和硬件电路仿真功能,为了提高直流电动机调速系统的控制精度和降低开发成本,提出一种类似快速控制原型(Rapid Control Protopyte,RCP)的方案,以验证PID算法的的精确性,即基于Proteus的直流电动机闭环调速系统.与MATLAB等仿真工具相比,利用Proteus可以在虚拟环境中完成硬件电路的设计,并通过对CPU编程,直接验证控制算法.使用这种类快速控制原型的方法,在实验设计系统开发初期,有助于降低开发成本,缩短开发周期,提高设计效率.%In control system development,the parallel development of software and hardware can speed up the design process.Proteus-based libraries have a full range of powerful circuit analysis and simulation of physical function.In this paper,a new kind of fast control prototype (RCP) is proposed to verify the accuracy of the PID algorithm based on paring with MATLAB and other simulation tools,Proteus can be used to complete the design of the hardware circuit in the virtual environment,and through the CPU programming,the validation of control algorithm can be directly achieved.The use of this type of rapid control prototype method,in the early stage of the experimental design system development,can reduce development costs,shorten the development cycle,improve design efficiency.【期刊名称】《实验室研究与探索》【年(卷),期】2017(036)012【总页数】5页(P52-56)【关键词】直流电动机;脉宽调制;仿真;单片机【作者】朱奥辞;赵钢【作者单位】天津理工大学天津市复杂控制理论与应用重点实验室,天津300384;天津理工大学天津市复杂控制理论与应用重点实验室,天津300384【正文语种】中文【中图分类】TP271+.40 引言随着计算机仿真软件功能不断完善,处理速度快速提升,仿真在自动控制系统和产品设计中的发挥着举足轻重的作用,当原型硬件电路和嵌入式代码主要部分实现后,就可以在仿真软件中将硬件电路和软件结合起来并开始测试工作,从而可以测试算法的可靠性,即提出的一种类RCP的实验设计方法。
根据proteus仿真的pwm电机调速
目标:
(1) CPU为8051芯片;
(2) 实验需要4个LED,分别显示启动、加速、减速和停止。
(3) 通过按键开关输入不同的值改变脉冲占空比的控制值从而得到不同的频率脉冲,实现脉冲转变为点评,实现调速功能。
PWM EQU 7FH ;PWM赋初始值
RET
;----
;蜂鸣器响一声子程序
;---
BEEP_BL:
MOV R6,#100
BL1: CALL BL2
CPL BEEP
DJNZ R6,BL1
MOV R5,#25
CALL DELAY2
RET
BL2: MOV R7,#180
BL3: NOP
DJNZ R7,BL3
RET
DELAY2: ;延时R5×10MS
if (!P1_5)
{
ZKB1--;
ZKB2=100-ZKB1;
}
}
/*对占空比值限定范围*/
if (ZKB1>99) ZKB1=1;
if (ZKB1<1) ZKB1=99;
}
}
/******************************************************
*函数功能:对系统进行初始化,包括定时器初始化和变量初始化*/
P1_0=0;
else
P1_0=1;
if (click<=ZKB2)
P1_1=0;
else
P1_1=1;
}
三、proteus仿真图
ORG 0030H
;----
;主程序
;定时器0工作在模式1,定时器1工作在模式2。
基于LabVIEW和Proteus的直流电机调速系统仿真设计
21 单 片 机 硬 件 Байду номын сангаас 计 . 下 位 机 A 8 C 2单 片机 系 统 由 Poe s 7仿 真设 计 而 得 , T9 5 rtu 硬件 电路 如 图 2所 示 。
图 2 系 统 硬 件 电 路 图
编 码 器 是 同 轴 传 动 。 实 际使 用 中 , 电码 盘 与 电动 机 同轴 传 动 在 光 或 者 通 过 齿 轮 连 接传 动 。 电动 机 旋 转 带 动 编 码 器 的光 栅 盘 转 动 ,
周 志欣 武 丽 ( 西南科技 大学信息工程 学院, 四川 绵阳 6 1 1 ) 2 0 0
摘 要
采 用 L b lW 和 Poe s设 计 了一 个 直 流 电机 仿 真调 速 系统 。 电机 的 驱 动 和 速 度 的 采 集 由 单 片 机 完 成 , a VE rtu 并将 单 片机
t bewee MCU an up r co puert r ugh i u l er . bVl mpl i on t n d pe m t ho vr a s i La t a1 EW i eme t PI co tol h r c v h if m a i ns D n r te e eied t e nor t on
f m MCU. al a js c moo p e y a jsi WM wa e c u is o tu h 8 C 2 sn l hp c mp trh n r o f l du td trs e d b du t g P v s o c pe up tte AT 9 5 i e c i o ue , e i y n n g t a he e te p ro e o c moo p e du t n. c i h up s fd trs e d a jsme t v
基于Proteus的直流电机调速系统设计与仿真
基于Proteus的直流电机调速系统设计与仿真作者:王培来源:《环球市场》2017年第22期摘要:本设计以单片机AT89C51为控制系统核心,将控制信号施加在L298芯片上来控制电机运行。
设计是以键盘作为输入,实现对直流电机的启停、加速、减速、正转、反转控制,采用PWM技术控制电动机,以改变占空比来实现对电机速度的精准控制。
文章在程序方面给出了主程序、键盘扫描子程序、PWM信号发生程序、测速度子程序以及显示子程序的流程图。
最后通过Proteus软件对直流电机调速系统进行了仿真与分析,仿真结果表明:本设计实现了对电机启停、加速、减速、正转、反转的有效控制。
关键词:AT89C51;PWM控制;调速;Proteus一、直流电动机调速的硬件设计本设计采用单片机AT89C51来控制输出的数据,将控制信号施加于电机驱动模块的L298芯片上,从而实现控制直流电机。
以键盘作为输入,实现对直流电机的启停、加速、减速、正转、反转控制,设计方案应用PWM技术控制电机,通过改变占空比实现速度的精准控制。
用四位LED显示屏实现电机速度的实时显示。
系统由以下结构组成:单片机、电动机驱动模块、按键模块、显示模块。
主要内容如下:1、电机驱动模块的设计:利用H桥驱动电路可实现电机的正反转,制动的功能,L298是集成有桥式电路的电机专用芯片,在应用领域被广泛使用,而且其性能稳定可靠,故用L298作为电机的驱动芯片。
2、单片机的选型:MCS-51系列单片机有多种型号,其中AT89C51不仅能兼容8051,还有ISP编程和看门狗的功能,本设计选用单片机AT89C51作为控制核心;3、键盘类型的选择:与矩阵式键盘相比独立式键盘结构比较简单,所以本设计采用独立式键盘向单片机输入信号;4、显示模块的设计:LED是单片机系统中最常用的一款输出器件,所以用LED实现对电机转速的实时显示。
二、直流电动机调速的程序设计在进行单片机控制系统的设计时,除了硬件的设计外,大量的工作是根据每个对象的实际需要而进行的程序设计。
proteus仿真-直流电机驱动、调速及过流保护报告
电流电机驱动、调速及过流保护实验报告学院:电子信息学院班级:组长:组员:实验课题:直流电机驱动、调速及过流保护目录1、项目描述 (3)2、设计原理 (3)3、设计过程 (4)3.1、硬件设计 (4)3.2、软件设计 (6)4、系统功能调试 (10)4.1、调试软件介绍 (10)4.2、电路运行结果 (11)5、总结 (12)1、项目描述本项目将通过proteus仿真电路模拟电机的驱动,并实现调速和转向控制。
项目将应用一个简单的电路,使用Arduino和L298N IC控制直流电机的速度和方向。
使用PWM信号和L298N(H桥)的组合来控制简单直流电机的功能,即速度和转向控制。
本项目基本完成了驱动,调速及转向控制功能。
2、设计原理 0直流电机是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。
它是能实现直流电能和机械能互相转换的电机。
当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。
直流电机的工作原理是里边固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。
直流发电机的工作原理就是把电枢线圈中感应的交变电动势,靠换向器配合电刷的换向作用,使之从电刷端引出时变为直流电动势的原理。
应电动势的方向按右手定则确定(磁感线指向手心,大拇指指向导体运动方向,其他四指的指向就是导体中感应电动势的方向)。
导体受力的方向用左手定则确定。
这一对电磁力形成了作用于电枢一个力矩,这个力矩在旋转电机里称为电磁转矩,转矩的方向是逆时针方向,企图使电枢逆时针方向转动。
如果此电磁转矩能够克服电枢上的阻转矩(例如由摩擦引起的阻转矩以及其它负载转矩),电枢就能按逆时针方向旋转起来。
基于PWM地电机调速系统
基于PWM的电机调速系统实验目的:1.学会并掌握可keil软件的使用;2.学会并掌握protues软件的使用;3.通过实验巩固单片机相关知识和检验自身动手能力实验要求:掌握单片机相关知识,利用调PWM占空比的方式来控制直流电机的转速,并且在led数码管上显示转速。
实验设备和仪器:1.89c51单片机最小系统2.直流电机3.示波器实验内容:本次实验设计是由小组五个成员共同完成基于PWM的电机调速系统并完成实物搭建和撰写实验报告。
本次实验小组共提供了两个方案,方案一和方案二,两个方案各自具有优缺点,详细内容会在下面给出。
方案一实验步骤:1.利用protues画电路图,电路图如图1所示:图1:方案一电路图2.根据电路图编写C语言代码:代码如下:#include <reg51.h>sbit PWM=P2^7;sbit CS3=P2^3;sbit CS2=P2^2;sbit CS1=P2^1;sbit CS0=P2^0;sbit key1=P1^0;sbit key2=P1^1;sbit key3=P1^2;sbit key4=P1^3;unsigned char timer1;unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};void Time1Config();void main(void){Time1Config();while(1){if(timer1>100) //PWM周期为100*0.5ms{timer1=0;}if(~key1){if(timer1 <30) //改变30这个值可以改变直流电机的速度{PWM=1;}else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0;P0=tab[3];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab[0];P0=0xff;}else if(~key2){if(timer1 <50){PWM=1;else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0; P0=tab[5];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab[0];P0=0xff;}else if(~key3){if(timer1 <80){PWM=1;}else{PWM=0;}CS0=0;CS1=0;CS2=1;CS3=0; P0=tab[8];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab[0];P0=0xff;}else if(~key4){if(timer1 <100){PWM=1;}else{PWM=0;}CS0=0;CS1=1;CS2=0;CS3=0; P0=tab[1];CS0=0;CS1=0;CS2=1;CS3=0;P0=tab[0];P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab[0];P0=0xff;}}}void Time1Config(){TMOD|= 0x10; //设置定时计数器工作方式1为定时器//--定时器赋初始值,12MHZ下定时0.5ms--//TH1 = 0xFE;TL1 = 0x0C;ET1 = 1; //开启定时器1中断EA = 1;TR1 = 1; //开启定时器}void Time1(void) interrupt 3 //3 为定时器1的中断号{TH1 = 0xFE; //重新赋初值TL1 = 0x0C;timer1++;}3.实验仿真,部分仿真结果如图2图3所示:图2:仿真结果图(1)图3:仿真结果图(2)4.实物验证结果如图4所示:图4:方案一实物验证结果实物验证可以明显感觉到电机转速的变化,由于每个开发板不同,相比仿真程序,对实物验证程序进行了略微的修改,最终能达到要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MOV OUT,#00H ;启动输出
RETI
;----
;T1中断服务子程序 (脉宽)
;----
INTT1:
CLR TR1 ;脉宽调节结束
MOV OUT,#0FFH ;结束输出
RETI
;----
;10ms延时子程序
;----DELAY:
MOV R6,#50
DELAY1:
MOV R7,#100
#include <REGX51.H>
#define uchar unsigned char
/*****************************************************************************
* TH0和TL0是计数器0的高8位和低8位计数器,计算办法:TL0=(65536-C)%256; *
if (!P1_5)
{
ZKB1--;
ZKB2=100-ZKB1;
}
}
/*对占空比值限定范围*/
if (ZKB1>99) ZKB1=1;
if (ZKB1<1) ZKB1=99;
}
}
/******************************************************
*函数功能:对系统进行初始化,包括定时器初始化和变量初始化*/
SETB EA
SETB ET0
SETB ET1
SETB TR0
LOOP: MOV A,PWM ;
JB INCKEY,LOOP1 ;增加键是否按下?
CALL DELAY ;延时去抖动
JB INCKEY,LOOP1
CJNE A,#0FFH,PWMINC ;是否到最大值?
CALL BEEP_BL ;是,蜂鸣器报警。
PWM EQU 7FH ;PWM赋初始值
OUT EQU P0 ;8个LED灯的接口
INCKEY EQU P1.4 ;K1,PWM值增加键。
DECKEY EQU P1.5 ;K2,PWM值减小键。
BEEP EQU P3.7
;----
ORG 0000H
SJMP START
ORG 000BH
SJMP INTT0
DJNZ R7,$
DJNZ R6,DELAY1
RET
;----
;蜂鸣器响一声子程序
;---
BEEP_BL:
MOV R6,#100
BL1: CALL BL2
CPL BEEP
DJNZ R6,BL1
MOV R5,#25
CALL DELAY2
RET
BL2: MOV R7,#180
BL3: NOP
DJNZ R7,BL3
P1_0=0;
else
P1_0=1;
if (click<=ZKB2)
P1_1=0;
else
P1_1=1;
}
三、proteus仿真图
}
/*中断函数*/
void timer0(void) interrupt 1 using 2
{
static uchar click=0; /*中断次数计数器变量*/
TH0=V_TH0; /*恢复定时器初始值*/
TL0=V_TL0;
++click;
if (click>=100) click=0;
if (click<=ZKB1) /*当小于占空比值时输出低电平,高于时是高电平,从而实现占空比的调整*/
{
;
}
}
}
void delay500us(void)
{
int j;
for(j=0;j<57;j++)
{
;
}
}
void beep(void)
{
uchar t;
for(t=0;t<100;t++)
{
delay500us();
FMQ=!FMQ; //产生脉冲
}
FMQ=1; //关闭蜂鸣器
delaynms(300);
SJMP LOOP
PWMINC:
INC PWM ;调节脉宽(脉宽减小)
SJMP LOOP
LOOP1: JB DECKEY,LOOP2 ;减小键是否按下?
CALL DELAY ;延时去抖动
JB DECKEY,LOOP2
CJNE A,#02H,PWMDEC ;是否到最小值?
CALL BEEP_BL ;是,蜂鸣器报警。
ZKB1=50; //占空比初值设定
ZKB2=50; //占空比初值设定
while(1)
{
if(!K5)
{
delaynms(15); //消抖
if(!K5) //确定按键按下
{
beep();
ZKB1++; //增加ZKB1
ZKB2=100-ZKB1; //相应的ZKB2就减少
}
}
if(!K6)
{
delaynms(15); //消抖
void init_sys(void) /*系统初始化函数*/
{
/*定时器初始化*/
TMOD=V_TMOD;
TH0=V_TH0;
TL0=V_TL0;
TR0=1;
ET0=1;
EA=1;
}
//延时
void Delay5Ms(void)
{
unsignempCyc--);
sbit K5=P1^4;
sbit K6=P1^5;
sbit PWM1=P1^0;
sbit PWM2=P1^1;
sbit FMQ=P3^6;
uchar ZKB1,ZKB2;
void delaynms(uint aa)
{
uchar bb;
while(aa--)
{
for(bb=0;bb<115;bb++) //1ms基准延时程序
SJMP LOOP
PWMDEC:
DEC PWM ;调节脉宽(脉宽增加)
LOOP2: SJMP LOOP
;----
;T0中断服务子程序 (频率)
;控制定时器1中断
;----
INTT0:
CLR TR1
MOV TH0,#0FCH ;1ms延时常数
MOV TL0,#066H ;频率调节
MOV TH1,PWM
}
void main(void)
{
TR0=0; //关闭定时器0
TMOD=0x01; //定时器0,工作方式1
TH0=(65526-100)/256;
TL0=(65526-100)%256; //100us即0.01ms中断一次
EA=1; //开总中断
ET0=1; //开定时器0中断
TR0=1; //启动定时器T0
//电机反方向旋转以最高速度
二、内容及要求:
1、设计一个直流电机调速系统,并用单片机实现连接开关和数码显示并将其值输入直流电机调速系统。
2、通过公式及键控实现其直流电机启动、加速、减速和停止等四种形态。
目标:
(1) CPU为8051芯片;
(2) 实验需要4个LED,分别显示启动、加速、减速和停止。
(3) 通过按键开关输入不同的值改变脉冲占空比的控制值从而得到不同的频率脉冲,实现脉冲转变为点评,实现调速功能。
* TH0=(65536-C)/256,其中C为所要计数的次数即多长时间产生一次中断;TMOD是计数器*
*工作模式选择,0X01表示选用模式1,它有16位计数器,最大计数脉冲为65536,最长时*
*间为1ms*65536=65.536ms *
******************************************************************************/
TH0=(65526-100)/256;
TL0=(65526-100)%256;
N++;
if(N>100)
N=0;
if(N<=ZKB1)
PWM1=0;
else
PWM1=1;
if(N<=ZKB2)
PWM2=0;
else
PWM2=1;
}
//显现:电机转速到最高后,也就是N为1或99时,再按一下,就变到99或1,
ORG 001BH
SJMP INTT1
ORG 0030H
;----
;主程序
;定时器0工作在模式1,定时器1工作在模式2。
;----
START:
MOV SP,#30H
MOV TMOD,#21H
MOV TH1,PWM ;脉宽调节
MOV TL1,#00H
MOV TH0,#0FCH ;
MOV TL0,#066H ;频率调节
if(!K6) //确定按键按下
{
beep();
ZKB1--; //减少ZKB1
ZKB2=100-ZKB1; //相应的ZKB2增加
}
}
if(ZKB1>99)
ZKB1=1;
if(ZKB1<1)
ZKB1=99;
}
}
void time0(void) interrupt 1
{
static uchar N=0;
直流电机调速资料汇总
一.
使用单片机来控制直流电机的变速,一般采用调节电枢电压的方式,通过单片机控制PWM1,PWM2,产生可变的脉冲,这样电机上的电压也为宽度可变的脉冲电压。
C语言代码:
#include<AT89X52.h>