步进电机的驱动L298 L297与PROTEUS仿真

合集下载

基于Proteus的步进电机控制系统仿真设计最终版 -精品

基于Proteus的步进电机控制系统仿真设计最终版 -精品

计算机控制技术课程设计报告《基于Proteus的步进电机控制系统仿真设计》专业及班级______ 09自动化(1)班_________ 姓名_____ 吴红田坤王林指导老师_______ 丁健______________完成时间_______ _ 2012-6-17__________________一、步进电机原理、控制技术及其特点 (3)(1)换相顺序的控制 (3)(2)步进电机的换向控制 (3)(3)步进电机的速度控制 (3)(4)步进电机的起停控制 (4)(5)步进电机的加减速控制 (4)(6)步进电机的换向控制 (4)二、元器件介绍 (5)(1)步进电机 (5)(2)89C51单片机 (7)(3)L297介绍 (7)(4)L298简介 (11)三、方案论证 (13)四、硬件设计 (14)(1)控制电路 (14)(2)驱动电路 (15)(3)显示模块 (16)(4)总体电路图 (16)五、软件设计 (17)(2)定时中断设计 (17)(3)外部中断设计 (17)六、源程序代码 (19)七、总结 (23)基于protues的步进电机控制系统设计摘要:步进电机是一种进行精确步进运动的机电执行元件,它广泛应用于工业机械的数字控制,为使系统的可靠性、通用性、可维护性以及性价比最优,根据控制系统功能要求及步进电机应用环境,确定了设计系统硬件和软件的功能划分,从而实现了基于8051单片机的四相步进电机的开环控制系统。

控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。

为实现单片机控制步进电机系统在数控机床上的应用,系统设计了两个外部中断,以实现步进电机在某段时间内的反复正反转功能,也即数控机床的刀架自动进给运动,随着单片机技术的不断发展,单片机在日用电子产品中的应用越来越广泛,自六十年代初期以来,步进电机的应用得到很大的提高。

L297_L298芯片混合式步进电机驱动器设计原理图及例程

L297_L298芯片混合式步进电机驱动器设计原理图及例程

【简要说明】一、尺寸:长71mmX宽43mmX高28mm二、主要芯片:L297、L298N三、工作电压:控制信号直流4.5~5.5V;电机电压直流5V~30V四、最大工作电流:2A五、额定功率25W六、特点:1、具有电源指示。

2、转速可调3、抗干扰能力强4、具有续流保护和过电流保护5、可单独控制一台步进电机6、可控制两相和四相步进电机7、可控制直径在42mm内的任何,两相和四相步进电机适用场合:单片机学习、电子竞赛、产品开发、毕业设计。

【标注图片】【步进电机控制接线图】步进电机的控制实例步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。

步进电机可分为反应式步进电机(简称VR)、永磁式步进电机(简称PM)和混合式步进电机(简称HB)。

一、步进电机最大特点是:1、它是通过输入脉冲信号来进行控制的。

2、电机的总转动角度由输入脉冲数决定。

3、电机的转速由脉冲信号频率决定。

二、步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。

(或者其他信号源)三、控制步进电机的速度如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。

两个脉冲的间隔越短,步进电机就转得越快。

调整单片机发出的脉冲频率,就可以对步进电机进行调速。

(注意:如果脉冲频率的速度大于了电机的反应速度,那么步进电机将会出现失步现象)。

四、此板驱动步进电机测试程序说明:以AT89S52单片机控制单元,C语言编程!【接线图】【测试程序】/********************************************************************汇诚科技实现功能:正转_反转_减速_加速程序使用芯片:AT89S52 或者STC89C52晶振:11.0592MHZ编译环境:Keil作者:zhangxinchun淘宝店:汇诚科技【声明】此程序仅用于学习与参考,引用请注明和作者信息!*********************************************************************/ #include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar Y=1; //初始化速度/********************************************************控制位定义********************************************************/sbit shi_neng=P1^0; // 使能控制位sbit fang_shi=P1^1; // 工作方式控制位sbit fang_xiang=P1^2;// 旋转方向控制位sbit mai_chong=P1^3; // 脉冲控制位sbit zheng_zhuan=P2^0; // 正转sbit fan_zhuan=P2^1; // 反转sbit jia_su=P2^2; // 加速sbit jian_su=P2^3; // 减速/********************************************************延时函数********************************************************/ void delay(uchar i)//延时函数{uchar j,k;for(j=0;j<i;j++)for(k=0;k<180;k++);}/********************************************************加速函数********************************************************/ void jia(){Y=Y-1;if(Y<=1){Y=1;}//如果速度值小于等于1,值保持不变}/********************************************************减速函数********************************************************/ void jian(){Y=Y+1;if(Y>=100){Y=100;}}/********************************************************主函数********************************************************/main(){shi_neng=1; // 使能控制位fang_shi=1; // 工作方式控制位fang_xiang=1;// 旋转方向控制位mai_chong=1; // 脉冲控制位while(1){if(zheng_zhuan==0){fang_xiang=1;}if(fan_zhuan==0){fang_xiang=0;}if(jia_su==0){delay(10);while(!jia_su);jia();}if(jian_su==0){delay(10);while(!jian_su);jian();}mai_chong=~mai_chong; //输出时钟脉冲delay(Y); //延时(括号内数值越小,电机转动速度越快)}}/********************************************************结束********************************************************/【应用原理图】L297_L298芯片混合式步进电机驱动器元件清单序号名称标注名型号封装备注1 电阻R1、R3 1K 贴片0805封装2 电阻R2 3.9K 贴片0805封装3 电阻R4、R5 0.5欧姆直插2W4 电阻R6 22K 贴片0805封装5 电容C1 25V0.22uf 直插电容6 电阻C2 50V100UF 电解电容7 发个二极管DS1 红色二极管区分正负极8 整流二极管D1~D8 IN40079 芯片U1 L297 20P直插10 芯片U2 L29811 排针P1 6针12 端子6针【图片展示】/********************************************************实现功能:正转程序使用芯片:AT89S52晶振:11.0592MHZ编译环境:Keil********************************************************/#include<reg52.h> //库文件#define uchar unsigned char //字符型宏定义#define uint unsigned int //整型宏定义uchar tt; //定时器计数初值定义uint sec; //速度值定义uchar Y=30; //初始化速度/********************************************************控制位定义********************************************************/sbit shi_neng=P1^0; // 使能控制位sbit fang_shi=P1^1; // 工作方式控制位sbit fang_xiang=P1^2;// 旋转方向控制位sbit mai_chong=P1^3; // 脉冲控制位sbit zheng_zhuan=P2^0; // 正转sbit fan_zhuan=P2^1; // 反转sbit jia_su=P2^2; // 加速sbit jian_su=P2^3; // 减速/********************************************************************延时函数*********************************************************************/ void delay(uchar t){uchar i,j;for(i=0;i<t;i++){for(j=13;j>0;j--);{ ;}}}/********************************************************************定时中断服务函数*********************************************************************/ void t0(void) interrupt 1 using 0 //定时中断服务函数{tt++; //每过250ust tt 加一if(tt==1) //当tt满足条件时{tt=0; //计满重新再计sec++;if(sec==Y) //括号内数值越小,电机转动速度越快{sec=0; //计满重新再计mai_chong=~mai_chong; //脉冲输出}}}/********************************************************初始化********************************************************/ void init(){TMOD=0x02; //定时器工作在方式2ET0=1;EA=1;TH0=0xFF; //对TH0 TL0 赋值TL0=0xFE;TR0=1; //开始定时sec=0;mai_chong=1; // 脉冲控制位}/********************************************************加速函数********************************************************/ void jia(){Y=Y-2;if(Y<=1){Y=2;}//如果速度值小于等于1,值保持不变}/********************************************************减速函数********************************************************/ void jian(){Y=Y+2;if(Y>=100){Y=100;}}/********************************************************主函数********************************************************/main(){init(); //程序初始化shi_neng=0; // 使能控制位fang_shi=1; // 工作方式控制fang_xiang=1;// 控制方向为正转while(1){if(zheng_zhuan==0){delay(100);shi_neng=1;fang_xiang=0;}if(fan_zhuan==0){delay(100);shi_neng=1;fang_xiang=1;}if(jia_su==0){delay(10);while(!jia_su);jia();}if(jian_su==0){delay(10);while(!jian_su);jian();}}}/********************************************************结束********************************************************/keil参考程序正转_反转_加速_减速_高速#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar Y=1; //初始化速度/********************************************************控制位定义********************************************************/sbit shi_neng=P1^0; // 使能控制位sbit fang_shi=P1^1; // 工作方式控制位sbit fang_xiang=P1^2;// 旋转方向控制位sbit mai_chong=P1^3; // 脉冲控制位sbit zheng_zhuan=P2^0; // 正转sbit fan_zhuan=P2^1; // 反转sbit jia_su=P2^2; // 加速sbit jian_su=P2^3; // 减速/********************************************************延时函数********************************************************/void delay(uchar i)//延时函数{uchar j,k;for(j=0;j<i;j++)for(k=0;k<180;k++);}/********************************************************加速函数********************************************************/ void jia(){Y=Y-1;if(Y<=1){Y=1;}//如果速度值小于等于1,值保持不变}/********************************************************减速函数********************************************************/ void jian(){Y=Y+1;if(Y>=100){Y=100;}}/********************************************************主函数********************************************************/main(){shi_neng=1; // 使能控制位fang_shi=1; // 工作方式控制位fang_xiang=1;// 旋转方向控制位mai_chong=1; // 脉冲控制位while(1){if(zheng_zhuan==0){fang_xiang=1;}if(fan_zhuan==0){fang_xiang=0;}if(jia_su==0){delay(10);while(!jia_su);jia();}if(jian_su==0){delay(10);while(!jian_su);jian();}mai_chong=~mai_chong; //输出时钟脉冲delay(Y); //延时(括号内数值越小,电机转动速度越快)}}AVR系列单片机控制参考程序#include <iom16v.h>#include <macros.h>/**********************************************************************函数数据类型说明**********************************************************************/ #define uchar unsigned char#define uint unsigned int/**********************************************************************延时函数**********************************************************************/ void delay(uint MS){uint i,j;for( i=0;i<MS;i++)for(j=0;j<80;j++); //1141是在8MHz晶振下,通过软件仿真反复实验得到的数值}/**********************************************************************主函数**********************************************************************/ void main(){ uint i;i=10;//改变变量i 的大小可以改变速度,i越大速度越慢DDRB=0XFF;//PORTC=0XFF;PORTB|=BIT(0);//00000001 使能控制开PORTB|=BIT(1);//00000010 四拍工作方式PORTB|=BIT(2);//00000100 正方向旋转while(1){PORTB|=BIT(3);//00001000 脉冲输出delay(i);PORTB&=~BIT(3);delay(i);}}/**********************************************************************结束**********************************************************************/。

基于Proteus的步进电机控制系统仿真设计

基于Proteus的步进电机控制系统仿真设计
CW /CCW:电机旋转方向控制。 CLOCK :步 进 时 钟 脉 冲 ,信 号 的 上 升 沿 触 发 。 HALF / FULL:高电平,HALF 有效,四相 8 拍;低电 平,FULL 有 效,四 相 单 4 拍 ( translator 为 偶 数 状 态 ) ; 低电平,FULL 有 效,四 相 双 4 拍 ( translator 为 奇 数 状 态)。 RSTET:复位 到 HOME 初 始 状 态 ( STATE = 1,ABCD = 0101) 。 用 L297 输出信 号 可 控 制 L298 双 H 桥 驱 动 集 成 电路,用 来 驱 动 电 压 为 46 V,每 相 电 流 为 2. 5 A 以 下 的步进电动 机。 L297 也 可 用 来 控 制 由 达 林 顿 晶 体 管 组 成 的 分 立 电 路 ,驱 动 更 高 电 压 、更 大 电 流 的 步 进 电 动 机。此器件的特性是 只 需 要 时 钟、方 向 和 模 式 输 入 信 号。相位是由内部产 生 的,因 此 可 减 轻 微 处 理 机 和 程 序设计的负担。L297 主 要 由 译 码 器、2 个 固 定 斩 波 频 率的 PWM 恒流斩波器以及输出逻辑控制组成。其核 心是脉冲分配器,它产生 3 种相序信号,对应于 3 种不 同的工作方式,即:①半步方式( HALFSTEP,半 步 ) ;② 基本步距( FULLSTEP,整 步 ) 一 相 激 励 方 式;③ 基 本 步 距两相激励方式。脉 冲 分 配 器 内 部 是 1 个 3 bit 可 逆 计数器,加上一些组合逻辑,产生每周期 8 步格雷码时 序信号,这 也 就 是 半 步 工 作 方 式 的 时 序 信 号。 此 时 HALF / FULL 信号 为 高 电 平。 若 HALF / FULL 取 低 电 平,得到基 本 步 距 工 作 方 式,即 4 步 工 作 方 式。 L297

L297和L298N驱动电路及步进电机的基本原理与功能

L297和L298N驱动电路及步进电机的基本原理与功能

网易新闻微博邮箱闪电邮相册有道手机邮印像派梦幻人生更多博客博客首页博客话题热点专题博客油菜地找朋友博客圈子博客风格手机博客短信写博邮件写博博客复制摄影摄影展区每日专题窗体顶端年12月17日STC89C51单片机,L297和L298N驱动电路及步进电机的基本原理与功能默认分类2008-12-11 14:43:53 阅读8201 评论6 字号:大中小订阅摘要:本设计首先介绍了STC89C51单片机,L297和L298N驱动电路及步进电机的基本原理与功能;其次,设计步进电机实现起停、转向、速度、位置变化的控制方案;再次,在这些器件功能与特点的基础上,拟出设计思路,构建系统的总体框架;最后利用PROTEL软件绘出电路图,同时写出设计系统的运行流程和相关程序。

整个系统通过写入单片机中的程序分配好控制字的存储单元以及相应的内存地址赋值;启动系统后,从单片机的I/O口输出控制脉冲,经过L297、L298N驱动电路对脉冲进行处理,输出能直接控制步进电机的脉冲信号。

在此基础上,重新分配I/O资源,同时增加驱动芯片L297、L298N的个数,在负载能力范围允许内,就能实现多台步进电机独立起停、转向、速度、位置变化的控制。

关键字:STC89C51单片机;L297; L298N; 步进电机前言步进电机是一种将电脉冲信号转换成相应角位移的控制电机。

目前,数字技术、计算机技术和永磁材料的迅速发展,推动了步进电机的发展。

本设计针对目前各个领域对自动化的需要,采用STC89C51单片机与L297,L298N驱动芯片驱动多台步进电机同时独立工作,将它应用于各种复杂的控制领域,能使许多半自动控制的系统完全成为真正的全自动,特别是用在机器人等领域,能极大的提高生产力和降低劳动强度。

由于步进电机具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。

STC89C51单片机的特点STC89C51系列单片机是宏晶科技推出的新一代超强抗干扰/高速/低功耗的单片机,是MCS-51系列单片机的派生产品;它们在指令系统中、硬件系统和片内资源与标准的8052单片机完全兼容,DIP-40封装系列与8051为pin-to-pin兼容,指令代码是与8051完全兼容的单片机。

用L297L298组成步进电机驱动电路

用L297L298组成步进电机驱动电路

供精确的角位置信息,并且比较容易控制。市场上有很
多现成的步进电机驱动机构,但价格都偏高,用MI—
CROELECTRONICS公司出产的L297,L298两种芯
片配合使用,可以用相对很便宜的价格组成一个性能
不错的步进电机驱动电路。
2硬件电路
L297是步进电机控制器,适用于双极性两相步进 电机或单极性四相步进电机的控制,可有半步、整步和 波状三种驱动模式。片内PWM斩波电路允许开关式 控制绕组电流。该器件的一个显著特点是仅需时钟、方 向和模式输入信号。步进电机所需相位由电路内部产 生,大大减轻了CPU的负担。
论文研究了双光束分光光度计的工作原理,及紫外可见光分光光度计的光学特点和紫外可见光的波长范围;介绍了嵌入式单板机、步进电机、光电 倍增管及数据通讯的工作原理;分析了测控系统各部分的要求,并在此基础上选择所需器件。
构建了以基于PC\104总线的嵌入式单板机(SBC84500)和单片机(89C51F020)为硬件控制核心的主从分布式数据采集控制系统,实现了嵌入式单板机与 单片机间的通信、测量过程的自动控制及测量过程中光电信号的采集与处理。为了使测控系统中的几个步进电机可以同时运行,提出了多路定时器中断 方案,同时采用智能速度控制方式,达到系统实时控制的目的。为了保证测量的准确性和稳定性,设计了带自动增益控制的信号放大电路,把得到的电 信号放大成A/D的近满度值,从而充分利用A/D的位数提高运算精度。
Abstract This article introduces how to use L297 and L298 building a stepper motor driver circuit,this design
can make the hardware simple,software easy and the cost low.

proteus中四相步进电机连接方法

proteus中四相步进电机连接方法

proteus中四相步进电机连接方法
在Proteus中,可以使用L298N电机驱动模块来连接四相步进电机。

以下是连接步骤:
1.将L298N电机驱动模块拖放到Proteus的工作区中。

2.连接电源和地线:
o将Vcc引脚连接到5V电源。

o将GND引脚连接到地线。

3.连接步进电机:
o将步进电机的四个线连接到L298N的OUT1、OUT2、OUT3、OUT4引脚上,具体连接顺序根据你所使用步
进电机的引脚排列而定。

4.连接控制信号:
o将步进电机的ENABLE引脚连接到L298N的ENA引脚上。

o将步进电机的控制信号(例如DIR和PUL)连接到L298N的相应引脚上。

DIR引脚用于控制步进电机的
旋转方向,PUL引脚用于控制步进电机的步进脉冲。

5.连接电源:
o将电源引脚(如B+和B-)连接到合适的电源供应器上,以提供足够的电流来驱动步进电机。

6.完成连接后,你可以通过在Proteus中模拟信号输入来测
试步进电机的运行情况。

需要注意的是,具体的连接方法可能因使用的步进电机和驱动模块而有所不同。

在进行实际连接时,请参考步进电机和L298N电机驱动模块的规格和数据手册,以确保正确连接并避免任何意外情况。

基于Proteus的步进电机闭环控制仿真

基于Proteus的步进电机闭环控制仿真

本科毕业设计论文题目基于Proteus的步进电机闭环控制仿真毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

用proteus学习步进电机

用proteus学习步进电机

用proteus学习步进电机步进电机是一种将电脉冲转化为角位移的执行机构。

通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。

您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。

2.步进电机分哪几种?步进电机分三种:永磁式(PM),反应式(VR)和混合式(HB)永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。

在欧美等发达国家80年代已被淘汰;混合式步进是指混合了永磁式和反应式的优点。

它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为0.72度。

这种步进电机的应用最为广泛。

上面是我在网上搜到的,重复的事情就不要做了,所以我直接给粘过了,我简单的解释一下,步进电机了,一般有,二相的,三相的,五相的,所谓的的相,就是电机里面推动电机的转的东西,叫绕组,二相的了,就是有两个绕组,如果说分A,B的话,A转一下,B再转一下,一圈了是360度,一个可以转1.8度,算一算,就是20次,AB它们就像接力一样,你推着轴转一些,我在接着转。

很显然,如果有三项,或是五项的话,那么就会比较精细,也就是说,每次转度的角度,可以更小,可以更精确的控制,反正就是这么回事。

上图。

一开始,我看了这个MOTOR的线不知道怎么接,有6根,其实,中间的两根是接电源的,上面的两根,下面的两根,分别接单片机的IO口。

驱动步进电机的,用的是ULN2003 还有L297/L298 我问下朋友,他们说L297/298现在用的多些,今天先用ULN2003联下,有时间再用L297/L298试下,另我买的开发板是个两相的,是用H式三极管来驱动的,很有意思,for(i=0;i<speed;i++){}}void main(){uint j,count= 20;uint speed = 2000;while(1){for(j=0;j<count;j++){P1=0x03;//4个引脚轮流转动delay(speed);P1=0x06;delay(speed);P1=0x0c;delay(speed);P1=0x09;delay(speed);}}}步进电动机(Step Motor)是一种数字控制电动机,它能将数字脉冲信号转换成角位移,即向其输出一个脉冲信号,步进电机就转动一个角度或者直线位移一步,所以称其为步进电机。

基于Protues的步进电机控制系统仿真设计

基于Protues的步进电机控制系统仿真设计

计算机控制技术课程设计报告《基于Protues的步进电机控制系统仿真设计》姓名:学号:专业:自动化(1)班授课老师:老师日期: 2013/6/20目录引言 (1)1设计电源 (1)2.四项步进电机 (1)2.1步进电机 (1)2.2步进电机的控制 (1)2.3步进电机的工作过程 (1)3电路图设计 (2)3.1AT89c52的概述 (2)3.2最小系统 (2)3.3复位电路 (2)3.4控制电路 (3)3.5电机驱动电路 (3)4程序设计 (3)4.1 主程序框图 (3)4.2 步进电机速度控制程序框图 (4)4.3 控制开关输入程序框图 (5)5结束语 (6)[参考文献] ................................ 错误!未定义书签。

附录A 源程序. (8)附录B (10)引言通过控制AT89c52芯片,实现对四相步进电机的转动控制。

具体功能主要是控制电机正转、反转、加速与减速。

具体工作过程是:给作品通电后,步进电机按照预先设置的转速和转动方式转动。

调整正反转按钮,步进电机实现正反转切换;按下加速开关,步进电机转速加快;按下减速开关时,电机转速减慢。

实现设计具体用到的仪器:AT89C52芯片、开关单元、四项步进电机等。

实现设计具体电路单元有:单片机最小系统、步进电机连接电路、开关连接电路[1]。

1设计电源AT89C51单片机需要的电源是5v直流电源,我们所用的电是220V50H Z,这要需要交流电源220V 转换5V直流电源,利用变压器的原理220v进行降压,单片机控制系统以及外围芯片供电采用7805系列三端稳压器件,通过全波整流,然后进行滤波,然后进行滤波稳压,使用电容滤去交流,电路如图1.1所示。

图1.1 电源设计图2 四项步进电机2.1步进电机步进电机是一种将电脉冲转化为角位移的执行机构。

电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角[2]。

基于PROTUES的单片机步进电机速度控制系统的设计与仿真

基于PROTUES的单片机步进电机速度控制系统的设计与仿真

前言步进电机成为执行元件,是机电一体化的重要产品其一,频繁使用在种种自动化操控系统中。

伴随微型电力电子和计算机技术的扩展,步进电机的需求量不断增加,在每一个国民经济地方都有使用。

最近几年来,伴随数字电子技术与微操控器的迅速崛起。

从而使得步进电机被频繁用于诸多运动操控中使用,这是因为数字输入性能的步进电机允许它连接到任何数字操控器。

在步进电机的操控的电路中能够根据操控脉冲信号个数来操控角位移量,所以实现准确定位的最终结果; 因为步进电机每次输入一个脉冲信号就可以转动一个固定的角位移,简单的说一个脉冲信号与一个固定角位移是一一对应关系。

这样就能够根据操控步进电机的任意两个连续脉冲信号的时间间隔来更改脉冲信号的频率,通过控制时间延时长短来操控步进角从而间接更改步进电机旋转的速度,最后达到实现步进电机的调节速度的效果。

步进电机能够成为一种操控用的特种电机,根据其没有积累的误差(精度为100%)的特性,频繁使用在种种开环操控。

伴随微型电力电子和计算机技术的扩展,步进电机的需求和日俱增,研究制造步进电机驱动器和操控系统具备非常重要的意义。

第1章绪论第一节单片机控制步进电机的背景与意义步进电机是根据操控脉冲信号个数来间接操控角位移量,最后实现准确定位的最终结果;它是一种电机一体化系统在增量运动转换成发散的数字信号输入的机械运动。

步进电机轴或者主轴旋转发散一步增量时,命令脉冲信号使用在适当的序列转子旋转固定一步取决于其建设。

较直流电机步进电机有诸多优势,即低摩擦,寿命长,使用的轴承极其稳定,由于没有接触刷和减少转子散热,并且根据其没有积累误差(精度为100%)的特性,频繁使用在种种开环操控系统。

步进电机能够成为一种操控用的特种电机。

它被成为最常用的一种电机,频繁使用在数控机床、机器人、自动化仪表等地方。

步进电机有3种:永磁式(PM),反应式(VR)和混合式(HB)。

步进电机是通过用电脉冲信号进行操控的,通俗的说:步进电机的位置和速度由脉冲信号数和频率决定。

基于proteus步进电机仿真及程序

基于proteus步进电机仿真及程序

proteus中的步进电机有两种,六线制(MOTOR-STEPPER)和四线制(MOTOR-BISTEPPER),六线制的左右中间两根线接电源,任然剩下四根,但的顺序和四线制的不同,见下图。

注意a,b,c,d的顺序在实际情况中,单片机是不能直接拖动步进电机的,需用ULN2003这样的器件两个步进电机都是四相电机。

如果用四拍:那么P2输出的(顺时针)顺序就是:0x03,0x06,0x0c,0x09a 1 0 0 1b 1 1 0 0c 0 1 1 0d 0 0 1 1如果用八拍:那么P2输出的(顺时针)顺序就是:0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09a 1 1 0 0 0 0 0 1b 0 1 1 1 0 0 0 0c 0 0 0 1 1 1 0 0d 0 0 0 0 0 1 1 1给一个测试八拍的仿真程序:1.#include&lt;reg52.h&gt;2.3.main(){4.while(1){5.unsigned int i,j,k;6.for(k=0;k&lt;255;k++){7.for(i=0;i&lt;75;i++)8.for(j=0;j&lt;255;j++);9.P2=0x01;10.for(i=0;i&lt;75;i++)11.for(j=0;j&lt;255;j++);12.P2=0x03;13. for(i=0;i&lt;75;i++)14.for(j=0;j&lt;255;j++);15.P2=0x02;16.17. for(i=0;i&lt;75;i++)18.for(j=0;j&lt;255;j++);19.P2=0x06;20.for(i=0;i&lt;75;i++)21.for(j=0;j&lt;255;j++);22.P2=0x04;23.for(i=0;i&lt;75;i++)24.for(j=0;j&lt;255;j++);25.P2=0x0c;26. for(i=0;i&lt;75;i++)27.for(j=0;j&lt;255;j++);28.P2=0x08;29.30. for(i=0;i&lt;75;i++)31.for(j=0;j&lt;255;j++);32.P2=0x09;33.34.35.}36. }37.}。

基于Proteus的步进电机闭环控制的仿真

基于Proteus的步进电机闭环控制的仿真

Component”窗口,并在“Program File”中添加 生成的
.HEX 文件路径。
(3)单击原理图中的运行按钮,进行仿真,在工具
图 4 设定值非 8 的整数倍时各路脉冲信号
栏 中 的 Virtual Instruments Mode 处 添 加 OSCILO47
第 31 卷第 02 期 2010 年 02 月
用另一个定时器计反馈脉冲数。 软件总体包括三部
分:主循环程序、中断服务子程序以及其他相应服
务子程序(包括键盘、LCD 显示、延时、PID 控制 、驱
动子程序)。
在连续控制过程中,采用增量式数字 PID 程序
对脉冲输出进行控制,此算法结构简单,参数易于
调整。
增量式数字 PID 的数学表达式为
△u(k)=A1e(k)-A2e(k-1)+A3e(k-2)
关键词: 步进电机; Proteus; 光电编码器; PID; 光耦 中图分类号: TM341; TP391 文献标志码: A 文章编号: 1003 - 0794(2010)02 - 0046 - 03
Proteus-based Closed-loop Control of Stepper Motor Simulation
第 31 卷第 02 期 2010 年 02 月
煤矿机械 Coal Mine Machinery
Vol.31No.02 Feb. 2010
基于 Proteus 的步进电机闭环控制的仿真
潘万平, 徐 刚, 张劲松 (齐齐哈尔大学 通信与电子工程学院, 黑龙江 齐齐哈尔 161006)
摘 要: 基于 Proteus 拥有齐全的元件库和强大的电路分析实物仿真功能,提出了用于步进电 机闭环自动控制系统的方法。 以 AT89C52 芯片为微处理器,L297 和 L298 芯片驱动步进电机,利用 光电编码器原理设计反馈电路,形成闭环。 用 C 语言编程,设计扰动,模拟外界干扰,应用 PID 算 法,利用 LCD 显示,比较设定值与反馈值,实现位置反馈闭环控制系统的仿真。

L297-L298芯片步进电机的单片机控制实现

L297-L298芯片步进电机的单片机控制实现

L297/L298芯片步进电机的单片机控制实现
1 引言
步进电动机是将电脉冲激励信号转换成相应的角位移或线位移的离散值控制电动机,这种电动机每当输入一个电脉冲就动一步,所以又称脉冲电动机。

步进电动机把电脉冲信号变换成角位移以控制转子转动的微特电机。

在自动控制装置中作为执行元件。

每输入一个脉冲信号,步进电动机前进一步,故又称脉冲电动机。

步进电动机多用于数字式计算机的外部设备,以及打印机、绘图机和磁盘等装置。

在数字控制系统中具有精度高,运行可靠。

如采用位置检测和速度反馈,亦可实现闭环控制。

步进电动机已广泛地应用于数字控制系统中,如数模转换装置、数控机床、计算机外围设备、自动记录仪、钟表等之中,另外在工业自动化生产线、印刷设备等中亦有应用。

2 工作原理
由于步进电机是一种将电脉冲信号转换成直线或角位移的执行元件,它不能直接接到交直流电源上,而必须使用专用设备-步进电机控制驱动器典型步进电机控制系统如图1 所示:控制器可以发出脉冲频率从几赫兹到几十千赫兹可以连续变化的脉冲信号,它为环形分配器提供脉冲序列。

环形分配器的主要功能是把来自控制环节的脉冲序列按一定的规律分配后,经过功率放大器的放大加到步进电机驱动电源的各项输人端,以驱动步进电机的转动。

环形分配器主要有两大类:一类是用计算机软件设计的方法实现环分器要求的功能,通常称软环形分配器。

另一类是用硬件构成的环形分配器,通常称为硬环形分配器。

图1 典型步进电机控制框图
3 硬件组成。

开题报告___基于Proteus的步进电机闭环控制仿真

开题报告___基于Proteus的步进电机闭环控制仿真

西安交通大学XX学院本科毕业设计(论文)开题报告题目基于Proteus的步进电机闭环控制仿真所在系电气与信息工程系学生姓名 XX专业电子信息工程班级电信XXX学号 XXXXXXXX指导老师 XXXX教学服务中心制表2013年3月对题目的陈述1.选题意义与国内外研究现状,主要研究内容及技术方法1.1选题的研究目的及意义在数控系统中,以步进电机作为伺服电机的机床及设备占有相当大的比例,据资统计每年在数控生产和经济型数控机床改造及机器人等领域,有三分之二以上采用的是以步进驱动系统作为伺服控制系统的。

步进系统多采用开环控制,由于步进电机本身的性能及机械结构等因素的影响都可使工作台煽离指令值,使系统的精度降低,因此,有效地提高步进系统的功能,挖掘步进驱动系统的潜力,除了在数控机床上的应用,步进电机也可以并用在其他的机械上,比如作为自动送料机中的马达,作为通用的软盘驱动器的马达,也可以应用在打印机和绘图仪中。

与此同时,步进电机还广泛应用于ATM机、喷绘机、刻字机、写真机。

喷绘设备、医疗仪器及设备、计算机外设及海量存储设备、精密仪器、工业控制系统、办公室自动化、机器人等领域。

特别是随着数字化技术的发展,步进电机将在其他领域得到更广泛的使用,因此,如何更好的实现对步进电机的优化控制有着十分重要的意义。

步进电机的主要优点之一是能在开环系统中保证一定的控制精度,但开环系统也具有一些缺点:无法知道步进电机在点位运动的匀速阶段和起动的升速极端是否失步,在步进结束时是否超步,以及由于负载变化而引起的速度变化,尤其当负载转矩较大且有冲击现象时,失步和丢步问题就显得十分突出;从而使步进电机的开环控制的应用受到一定程度的影响;因此,为解决这个问题,研究闭环系统对电动机的控制十分必要。

利用建立的反馈环节对步进电机的工作进行核步和稳速控制,从而可以大大改善开环控制的性能,获得精确的位置控制和在高速下的平稳运行,并具有适应负载变化和改善加速特性的功能。

基于protues步进电机仿真

基于protues步进电机仿真

基于protues的步进电机仿真课程设计专业及班级_____ ____________________ _姓名______ _______________________ 学号___ _______________________________授课老师_______ __ __________ ___ _______完成时间____ ______________ __ ________基于proteus的步进电机仿真摘要步进电机是一种将电脉冲转变为角位移的执行机构,可通过控制脉冲数来控制角位移量。

步进电机广泛应用在生产实践的各个领域。

它最大的应用是在数控机床的制造中,因为步进电机不需要A/D转换,能够直接将数字脉冲信号转化成为角位移,所以被认为是理想的数控机床的执行元件。

本设计利用proteus仿真软件进行电路仿真,系统通过设置六个按键分别控制步进电机的起止、方向、步进速度,使用1602液晶显示以上参数。

整个系统具有稳定性好,实用性强,操作界面友好等优点。

关键词:proteus仿真步进电机1602一、整体电路分析如下图,整个设计以STC89C51单片机为中心,由复位电路,时钟电路,电机驱动,步进电机,显示电路等组成,硬件模块如图1所示:图1 硬件模块图通过按键进行相应的参数设定,单片机接收到信号后经过判断驱动电机驱动模块,然后由驱动电路驱动步进电机运转,并用LCD显示设置的参数。

二、系统硬件电路选择与设计1、主控器的选择本次主控单元使用C51单片机对整个系统进行控制。

STC89C51RC包含512字节RAM 、32条I/O口线、3个16位定时/计数器、8输入4优先级嵌套中断结构、1个串行I/O口(可用于多机通信、I/O扩展或全双工UART)以及片内振荡器和时钟电路。

电路图如下:A B C DS 1S 2S 3S 4D 0D 7D 1D 2D 3D 4D 5D 6R S R WE X T A L 218X T A L 119A L E 30E A31P S E N 29R S T9P 0.0/A D 039P 0.1/A D 138P 0.2/A D 237P 0.3/A D 336P 0.4/A D 435P 0.5/A D 534P 0.6/A D 633P 0.7/A D 732P 1.01P 1.12P 1.23P 1.34P 1.45P 1.56P 1.67P 1.78P 3.0/R X D 10P 3.1/T X D 11P 3.2/I N T 012P 3.3/I N T 113P 3.4/T 014P 3.7/R D17P 3.6/W R 16P 3.5/T 115P 2.7/A 1528P 2.0/A 821P 2.1/A 922P 2.2/A 1023P 2.3/A 1124P 2.4/A 1225P 2.5/A 1326P 2.6/A 1427U1AT89C51图2 单片机最小系统电路图2、步进电机选择步进电机是一种能够将电脉冲信号转换成角位移或线位移的机电元件,它实际上是一种单相或多相同步电动机。

两相步进电机的双极细分驱动及Proteus仿真

两相步进电机的双极细分驱动及Proteus仿真

两相步进电机的双极细分驱动及Proteus仿真时为【摘要】从软件仿真的角度,论述了两相步进电机的双极细分驱动原理,给出了细分驱动的波形、C语言编程方法及其Protues仿真结果。

%From the perspective of software simulation,the bipolar micro-stepping drive principle of the two-phase stepper motor is discussed in this article.The wave of micro-stepping drive,C18 routine and the result of Proteus simulation are offered here.【期刊名称】《扬州职业大学学报》【年(卷),期】2012(016)001【总页数】3页(P21-23)【关键词】两相步进电机;PIC18F452单片机;C18程序;双极细分驱动;Proteus 【作者】时为【作者单位】扬州职业大学,江苏扬州225009【正文语种】中文【中图分类】TM383.6步进电机是一种专门用于位置和速度精确控制的特种电机。

步进电机的最大特点是其“数字性”,对于单片机发过来的每一个脉冲信号,步进电机在其驱动器的推动下运转一个固定角度(简称一步)。

如接收到一串脉冲步进电机将连续运转一段相应距离,也可通过微电脑或单片机发送控制脉冲频率,直接对电机转速进行控制。

因此,步进电机近年来在各行各业的控制设备中获得了越来越广泛的应用。

由于步进电机是一个弹性体系统,所以,有一个固有谐振频率。

当步进速率等于电机固有频率时,电机可能会产生听得见的噪音变化,同时振动增加,在严重情况下,电机在振荡点附近可能会失步。

使用细分驱动技术可以解决这一问题。

在工业控制领域,目前常用的控制电动机的芯片是PIC系列的单片机。

本文选择PIC18F452高性能单片机芯片编写两相步进电机双极细分驱动程序,使用Protues仿真,测量其输出的细分驱动波形并观测步进电机的运行情况。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档