文档库 最新最全的文档下载
当前位置:文档库 › 步进电机正反转程序 一

步进电机正反转程序 一

步进电机正反转程序 一
步进电机正反转程序 一

步进电机正反转程序一

#include <reg51.h> //51芯片管脚定义头文件

#include <intrins.h> //内部包含延时函数_nop_();

#define uchar unsigned char

#define uint unsigned int

uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码

uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码

sbit K1 = P3^2; //正转

sbit K2 = P3^3; //反转

sbit K3 = P3^4; //停止

sbit BEEP = P3^6; //蜂鸣器

/********************************************************/

/*

/* 延时t毫秒

/* 11.0592MHz时钟,延时约1ms

/*

/********************************************************/

void delay(uint t)

{

uint k;

while(t--)

{

for(k=0; k<125; k++)

{ }

}

}

/**********************************************************/

void delayB(uchar x) //x*0.14MS

{

uchar i;

while(x--)

{

for (i=0; i<13; i++)

{ }

}

}

/**********************************************************/

void beep()

{

uchar i;

for (i=0;i<100;i++)

{

delayB(4);

BEEP=!BEEP; //BEEP取反

}

BEEP=1; //关闭蜂鸣器

}

/********************************************************/ /*

/*步进电机正转

/*

/********************************************************/ void motor_ffw()

{

uchar i;

uint j;

for (j=0; j<8; j++) //转1*n圈

{

if(K3==0)

{break;} //退出此循环程序

for (i=0; i<8; i++) //一个周期转45度

{

P1 = FFW[i]; //取数据

delay(2); //调节转速

}

}

}

/********************************************************/ /*

/*步进电机反转

/*

/********************************************************/ void motor_rev()

{

uchar i;

uint j;

for (j=0; j<8; j++) //转1×n圈

{

if(K3==0)

{break;} //退出此循环程序

for (i=0; i<8; i++) //一个周期转45度

{

P1 = REV[i]; //取数据

delay(2); //调节转速

}

}

}

/******************************************************** *

* 主程序

*

*********************************************************/ main()

{

uchar r,N=64; //N 步进电机运转圈数

while(1)

{

if(K1==0)

{

beep();

for(r=0;r<N;r++)

{

motor_ffw(); //电机正转

if(K3==0)

{beep();break;} //退出此循环程序

}

}

els

e if(K2==0)

{

beep();

for(r=0;r<N;r++)

{

motor_rev(); //电机反转

if(K3==0)

{beep();break;} //退出此循环程序

}

}

else

P1 = 0xf0;

}

}

/********************************************************/

电机正反转电路图

电机正反转电路图

三相异步电动机接触器联锁的正反转控制的电气电子原理图如图3-4所示。线路中采用了两个接触器,即正转用的接触器KM1和反转用的接触器KM2,它们分别由正转按钮SB2和反转按钮SB3控制。这两个接触器的主触头所接通的电源相序不同,KM1按L1—L2—L3相序接线,KM2则对调了两相的相序。控制电路有两条,一条由按钮SB2和KM1线圈等组成的正转控制电路;另一条由按钮SB3和KM2线圈等组成的反转控制电路。

220v单相电机正反原理 单相电机不同于三相电机,三相电进入电机后,由于存在120°电角度,所以产生N S N S旋转磁场,推动转子旋转。而单相电进入电机后,产生不了N S N S磁场,所以加了一个启动绕组,启动绕组在定子内与工作绕组错开90°电角度排列,外接离心开关和启动电容后与工作绕组并联接入电源,又因为电容有阻直通交的作用,交流电通过电容时又滞后一个电角度,这样就人为地把进入电机的单相电又分出来一相,产生旋转磁场,推动转子旋转。反转时,只要把工作绕组或者启动绕组的两个接线对调一下就行,产生S N S N的磁场,电机就反转了。 网友完善的答案好评率:75% 单相电机的接线方法,是在副绕组中串联(不是并联)电容,再与主绕组并联接入电源;只要调换一下主绕组与副绕组的头尾并联接线,电机即反转 如果电机是3条出线的,其中一条是公共点!(分别与另外2条线的测电阻其值较小)接电源零线!然后把剩下的两条线并联电容,在电容的一端接220V电源相(火)线,就可以了!若要改变电机转向只要把220V电源相(火)线接在电容的另一端就可以了!

笼型电动机正反转的控制线路(电路图) 发布: | 作者: | 来源: jiasonghu | 查看:775次 | 用户关注: 接通电源让KMF--线圈通电其主触点闭合三相电源ABC分别通入电机三相绕组UVW,电动机正转。KMF线圈断电,主触点打开,电机停。让KMR线圈通电----其主触点闭合三相电源ABC通入电机三相绕组变为A—U未变,但B—W,C—V。电动→笼型电动机正反转的控制线路要使电动机给够实现反转,只要把接到电源的任意两根联线对调一头即可。为此用两个接触器来实现这一要求。设KMF为实现电机正转的接触器,KMR为实现电机反转的接触器。合上--S 笼型电动机正反转的控制线路 要使电动机给够实现反转,只要把接到电源的任意两根联线对调一头即可。为此用两个接触器来实现这一要求。 设 KMF 为实现电机正转的接触器, KMR 为实现电机反转的接触器。 接通电源→合上--S 让 KMF--线圈通电其主触点闭合 三相电源 ABC 分别通入电机三相绕组 UVW ,电动机正转。 KMF 线圈断电,主触点打开,电机停。 让 KMR 线圈通电----其主触点闭合 三相电源 ABC 通入电机三相绕组变 为 A — U 未变,但 B — W ,C — V。电动机将反转

西门子S 系列PLC控制步进电机进行正反转的方法

1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(),当闭合,住程序中的反转开始运做。这样子就OK了。 2、用PTO指令让OR 高速脉冲,另一个点如做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。 3、程NETWORK 1 // 用于单段脉冲串操作的主程序(PTO) // 首次扫描时,将映像寄存器位设为低 // 并调用子程序0 LD R 1 CALL SBR_0 NETWORK 1 // 子程序0开始 LD MOVB 16#8D SMB67 // 设置控制字节: // - 选择PTO操作 // - 选择单段操作 // - 选择毫秒增加 // - 设置脉冲计数和周期数值 // - 启用PTO功能 MOVW +500 SMW68 // 将周期设为500毫秒。 MOVD +4 SMD72 // 将脉冲计数设为4次脉冲。 ATCH INT_0 19 // 将中断例行程序0定义为 // 处理PTO完成中断的中断。 ENI // 全局中断启用

PLS 0 // 激活PTO操作,PLS0 =》 MOVB 16#89 SMB67 // 预载控制字节,用于随后的 // 周期改动。 NETWORK 1 // 中断0开始 // 如果当前周期为500毫秒: // 将周期设为1000毫秒,并生成4次脉冲 LDW= SMW68 +500 MOVW +1000 SMW68 PLS 0 CRETI NETWORK 2 // 如果当前周期为1000毫秒: // 将周期设为500毫秒,并生成4次脉冲 LDW= SMW68 +1000 MOVW +500 SMW68 PLS 0序注释 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解相关PLC产品的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城。

基于单片机ATS控制步进电机正反转

基于单片机A T S控制步进 电机正反转 The latest revision on November 22, 2020

目录 步进电机 (7) 附件A 源程序 .......................................... (12) 附件B 仿真结果 (15) 致谢 (18)

摘要 能够实现步进电机控制的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异更新。本文介绍一种用AT89S52作为核心部件进行逻辑控制及信号产生的单片机技术和汇编语言编程设计的步进电机控制系统,步进电机背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍,使我们不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程有了更加深刻的体会。本控制系统采用单片机控制,通过人为按动开关实现步进电机的开关,复位。该系统还增加了步进电机的加速及减速功能。具有灵活方便、适用范围广的特点,基本能够满足实践需求。 关键词: AT89S52 步进电机 ULN2003 第一章系统分析 框图设计 根据系统要求画出基于AT89S52单片机的控制步进电机的控制框图如图2-1所示。

图2-1基于AT89C52单片机的控制步进电机的控制框图 系统主要包括单片机、复位电路、晶振电路、按键电路、步进电机及驱动电路几部分。 晶振电路 AT89C52单片机有一个用于构成内部振荡器的反相放大器,XTAL1 和XTAL2 分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。 晶振模块自带振荡器、提供低阻方波输出,并且能够在一定条件下保证运行。最常用的两种类型是晶振模块和集成RC振荡器(硅振荡器)。晶振模块提供与分立晶振相同的精度。硅振荡器的精度要比分立RC振荡器高,多数情况下能够提供与陶瓷谐振槽路相当的精度。图2-2为晶振电路。 图2-2 晶振电路 第二章系统设计 硬件连接图 根据图2-1,可以设计出单片机控制步进电机的硬件电路图,如图3-1所示。

单相电机的倒顺开关正反转接线图及原理(一看便能搞懂)

单相电机的倒顺开关接线及原理 有不少电工对单相电机的接线搞不清。我先对单相电机的正反转原理讲一下。单机电机里面有二组线圈,一组是运转线圈(主线圈),一组是启动线圈(副线圈),大多的电机的启动线圈并不是只启动后就不用了,而是一直工作在电路中的。启动线圈电阻比运转线圈电阻大些,量下就知了。启动的线圈串了电容器的。也就是串了电容器的启动线圈与运转线圈并联,再接到220V电压上,这就是电机的接法。当这个串了电容器的启动线圈与运转线圈并联时,并联的二对接线头的头尾决定了正反转的。比起三相电动机的顺逆转控制,单相电动机要困难得多,一是因为单相电动机有启动电容、运行电容、离心开关等辅助装置,结构复杂;二是因为单相电动机运行绕组和启动绕组不一样,不能互为代用,增加了接线的难度,弄错就可能烧毁电动机。 有接线盒的单相电动机内部接线图

上图,是双电容单相电动机接线盒上的接线图,图上清晰的反映了电动机主绕组、副绕组和电容的接线位置,你只需要按图接进电源线,用连接片连接Z2和U2,UI和VI,电动机顺转,用连接片连接Z2和U1,U2和VI,电动机逆转。 单相电动机各个元件也好鉴别,电容都是装在外面,用肉眼就可以看清楚接线位置(如上图)启动电容接在V2—Z1位置,运行电容接在V1—Z1间,从里面引出的线也好鉴别,接在(如上图)UI—U2位置的是运行绕组,接在Z1—Z2位置的是启动绕组、接在V1—V2位置的是离心开关。用万用表也容易区分6根线,阻值最大的是启动绕组,阻值比较小的运行绕组,阻值为零的是离心开关。如果运行绕组和启动绕组阻值一样大,说明这两个绕组是完全相同的,可以互为代用。单相电动机的绕组两端和电容两端不分极性,任意接都可以,但启动绕组和运行绕组不能接反,启动电容和运行电容不能接反,否则容易烧启动绕组 以下是自己为了消化吸收而画的接线图,在此献给广大电工朋友,希望能给大家带来一些帮助。本人学识粗浅,特建立 QQ群:79694587 以便大家相互学习。

西门子S系列PLC控制步进电机进行正反转的方法

西门子S系列P L C控制步进电机进行正反转 的方法 SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(),当闭合,住程序中的反转开始运做。这样子就OK了。 2、用PTO指令让 OR 高速脉冲,另一个点如做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。 3、程NETWORK 1 // 用于单段脉冲串操作的主程序(PTO) // 首次扫描时,将映像寄存器位设为低 // 并调用子程序0 LD R 1 CALL SBR_0 NETWORK 1 // 子程序0开始 LD MOVB 16#8D SMB67 // 设置控制字节: // - 选择PTO操作 // - 选择单段操作 // - 选择毫秒增加 // - 设置脉冲计数和周期数值 // - 启用PTO功能 MOVW +500 SMW68 // 将周期设为500毫秒。 MOVD +4 SMD72 // 将脉冲计数设为4次脉冲。 ATCH INT_0 19 // 将中断例行程序0定义为 // 处理PTO完成中断的中断。 ENI // 全局中断启用

PLS 0 // 激活PTO操作,PLS0 =》 MOVB 16#89 SMB67 // 预载控制字节,用于随后的 // 周期改动。 NETWORK 1 // 中断0开始 // 如果当前周期为500毫秒: // 将周期设为1000毫秒,并生成4次脉冲 LDW= SMW68 +500 MOVW +1000 SMW68 PLS 0 CRETI NETWORK 2 // 如果当前周期为1000毫秒: // 将周期设为500毫秒,并生成4次脉冲 LDW= SMW68 +1000 MOVW +500 SMW68 PLS 0序注释 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解相关PLC产品的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城。

步进电机启动停止正反转控制程序的汇编语言的实现

DELAY 1MS MACRO TIME ;延时宏命令 LOCAL AA LOCAL BB PUSH CX MOV CX,TIME AA: PUSH CX MOV CX,1000 BB: NOP LOOP BB POP CX LOOP AA POP CX ENDM DATA SEGMENT TABA DB 01H,03H,02H,06H,04H,05H;正转的模型 TABB DB 05H,04H,06H,02H,03H,01H;反转的模型DATA ENDS CODE SEGMENT ZZ PROC NEAR PUSH DS MOV AX,DATA MOV DS,AX MOV AX,0 PUSH AX MOV DX,203H MOV AL,80H OUT DX,AL ;8255的控制字设定 MOV DX,200H MOV AL,0 OUT DX,AL ;先输出制动命令 MOV CX,360 ;设定正转步数 DD: MOV BL,6 ;六拍 MOV DX,200H LEA DI,TABA ;指针指向正转的数字模型 CC: MOV AL,[DI] OUT DX,AL DELAY 1MS 10 INC DI ;指针加1,指向下一步的数字模型 DEC BL ;拍数减1 JNZ CC ;六拍未结束,则继续循环 LOOP DD;360个周期的六拍未结束,继续循环 ZZ ENDP

FZ PROC NEAR MOV CX,400 ;设定反转步数 FF: MOV BL,6 MOV DX,200H LEA DI,TABB ;指针指向反转的数字模型 EE: MOV AL,[DI] OUT DX,AL DELAY 1MS 10 DEC DI ;指针减1,指向反转下一步数字模型 DEC BL JNZ EE LOOP FF FZ ENDP MOV DX,200H MOV AL,0 OUT DX,AL ;结束后,输出制动命令 RET MAIN ENDP CODE ENDS END START

直流电机正反转C程序

//直流电机正反转C程序 #include #define uchar unsigned char #define uint unsigned int sbit dula=P2^6; sbit wela=P2^7; sbit key4=P3^0; sbit key1=P3^1; //sbit set=P3^4; bit flag=0; uchar bai,shi,ge; uint i,count,num; uint disnum;//循环次数 uchar code tabledu[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0}; void delay_12MHZ_s(uint x) { uint j,k,i; for(j=x;j>0;j--) for(k=112;k>0;k--) for(i=1114;i>0;i--); } void delay_ms(uint x) { uint j,k; for(j=x;j>0;j--) for(k=112;k>0;k--); } void display_sm()//三位数码管显示循环次数 { bai=disnum/100; shi=disnum%100/10; ge=disnum%10; dula=1; if(bai==0)//如果百位是0则不显示百位 P0=0xff; else P0=tabledu[bai]; dula=0; P0=0xff; wela=1; P0=0xfe; wela=0; delay_ms(10);

电动机正反转控制电路图及其原理分析

正反转控制电路图及其原理分析 要实现电动机的正反转,只要将接至电动机三相电源进线中的任意两相对调接线,即可达到反转的目的。下面是接触器联锁的正反转控制线路,如图所示

图中主回路采用两个接触器,即正转接触器KM1和反转接触器KM2。当接触器KM1的三对主触头接通时,三相电源的相序按U―V―W接入电动机。当接触器

KM1的三对主触头断开,接触器KM2的三对主触头接通时,三相电源的相序按W―V―U接入电动机,电动机就向相反方向转动。电路要求接触器KM1和接触器KM2不能同时接通电源,否则它们的主触头将同时闭合,造成U、W两相电源短路。为此在KM1和KM2线圈各自支路中相互串联对方的一对辅助常闭触头,以保证接触器KM1和KM2不会同时接通电源,KM1和KM2的这两对辅助常闭触头在线路中所起的作用称为联锁或互锁作用,这两对辅助常闭触头就叫联锁或互锁触头。 正向启动过程:按下起动按钮SB2,接触器KM1线圈通电,与SB2并联的KM1的辅助常开触点闭合,以保证KMl线圈持续通电,串联在电动机回路中的KM1的主触点持续闭合,电动机连续正向运转。 停止过程:按下停止按钮SB1,接触器KMl线圈断电,与SB2并联的KM1的辅助触点断开,以保证KMl线圈持续失电,串联在电动机回路中的KMl的主触点持续断开,切断电动机定子电源,电动机停转。 反向起动过程:按下起动按钮SB3,接触器KM2线圈通电,与SB3并联的KM2的辅助常开触点闭合,以保证KM2线圈持续通电,串联在电动机回路中的KM2的主触点持续闭合,电动机连续反向运转。 对于这种控制线路,当要改变电动机的转向时,就必须先按停止按钮SB1,再按反转按钮SB3,才能使电机反转。如果不先按SB1,而是直接按SB3,电动机是不会反转的。

电机正反转联动控制电路图

按钮联锁正反转控制线路 图2—12 按钮联锁正反转控制电路图 图2-12 按钮联锁正反转控制电路图接触器联锁正反转控制线路

双重联锁正反转控制线路 元件安装图

元件明细表 1、线路的运用场合: 正反转控制运用生产机械要求运动部件能向正反两个方向运动的场合。如机床工作台电机的前进与后退控制;万能铣床主轴的正反转控制;电梯、起重机的上升与下降控制等场所。 2、控制原理分析 (1)、控制功能分析:A、怎样才能实现正反转控制? B、为什么要实现联锁? 这两个问题是本控制线路的核心所在,务必要透彻地理解,否则只会接线安装,那只是知其然而不知其所以然。另外,问题的提出,一方面让学生学会去思考,另一方面也培养学生发现问题、分析问题的能力。教学中,计划先让学生温书预习(5分钟)、寻找答案,再集中讲解。先提问抽查,让学生能各抒己见、充分发挥,最后再总结归纳,解答所提出的问题,进一步统一全班思路。答案如下: A、电机要实现正反转控制:将其电源的相序中任意两相对调即可(简称换相),通常是V相不变,将U相与W 相对调。 B、由于将两相相序对调,故须确保2个KM线圈不能同时得电,否则会发生严重的相间短路故障,因此必须采取联锁。为安全起见,常采用按钮联锁和接触器联锁的双重联锁正反转控制线路(如原理图所示)

(2)、工作原理分析 C、停止控制: 按下SB3,整个控制电路失电,接触器各触头复位,电机M失电停转 (3)双重联锁正反转控制线路的优点: 接触器联锁正反转控制线路虽工作安全可靠但操作不方便;而按钮联锁正反转控制线路虽操作方便但容易产生电源两相短路故障。双重联锁正反 转控制线路则兼有两种联锁控制线路的优点,操作方便,工作安全可靠。 3、怎样正确使用控制按钮? 控制按钮按用途和触头的结构不同分停止(常闭按钮)、起动按钮(常开按钮)和复合按钮(常开和常闭组合按钮)。按钮的颜色有红、绿、黑等,一般红色表示“停止”,绿色表示“起动”。接线时红色按钮作停止用,绿色或黑色表示起动或通电。 三、注意事项

单片机课设步进电机控制正反转(单片机爱好者)

单片机课程设计报告设计题目:步进电机控制系统 学院机械工程学院 专业机械设计制造及其自动化 班级 姓名 学号 指导教师 湖北工业大学 2010 年秋季学期

目录 1.设计目的 (2) 2.设计的主要内容和要求 (2) 3.题目及要求功能分析 (2) 4.设计方案 (5) 4.1 整体方案 (5) 4.2 具体方案 (5) 5.硬件电路的设计 (6) 5.1 硬件线路 (6) 5.2 工作原理 (7) 5.3 操作时序 (8) 6. 软件设计 (8) 6.1 软件结构 (8) 6.2 程序流程 (9) 6.3 源程序清单 (9) 7. 系统仿真 (9) 8. 使用说明 (10) 9. 设计总结 (10) 参考文献 (11) 附录 (12)

步进电机的控制 1.设计目的 (1)熟悉单片机编程原理。 (2)熟练掌握51单片机的控制电路和最小系统。 (3)单片机基本应用系统的设计方法。 2.设计的主要内容和要求 (1)查阅资料,了解步进电机的工作原理。 (2)通过单片机给参数控制电机的转动。 (3)通过按钮控制启停及反转。 (4)其他功能。 3.题目及要求功能分析 步进电机:步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其精度高等特点,广泛应用于各种工业控制系统中。 三相单、双六拍步进电机的结构和工作原理: 三相单、双六拍步进电机通电方式:这种方式的通电顺

步进电机正反转控制C语言程序 只为初学者

只为初学者的步进电机正反控制程序 #include<> #define uchar unsigned char #define uint unsigned int #define MotorData P2 //步进电机控制接口定义 sbit zheng=P3^0; sbit fan=P3^1; sbit stop=P3^2; uchar phasecw[8] ={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};//正转 uchar phaseccw[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//反转 //ms延时函数 void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++); } } void Delay_xms(uint x) { uint i,j; for(i=0;i

void Motor_work(uint t) { uchar i,j; switch(t) { case 0: while(1) {if(stop==0) break; for(i=0;i<8;i++) {MotorData=phasecw[i]; delay(50);//转速调节 } } break; case 1: while(1) {if(stop==0) break; for(j=0;j<8;j++) {MotorData=phaseccw[j]; delay(50);//转速调节 } } break; } } //停止转动 void Motor_test(void) { if(zheng==0) { Delay_xms(10); if(zheng==0) Motor_work(0); } if(fan==0) { Delay_xms(10); if(fan==0) Motor_work(1); } } //主函数 void main(void) {

直流电机正反转控制

(课程设计说明书(2015/2016 学年第二学期) 课程名称:单片机应用技术课程设计 题目:直流电机正反转控制 专业班级:电气工程及其自动化1321班 学生姓名: 学号: 1 指导教师: 设计周数:两周设计成绩: 2016年6月24日 目录 一、课程设计目的-----------------------------------3 二、课程设计任务及要求-----------------------------3 原始数据及主要任务------------------------------------------3 技术要求----------------------------------------------------3 三、单片机简介-------------------------------------3 四、软件设计---------------------------------------4

系统分析及应用种类-------------------------------------------4 系统设计-----------------------------------------------------5 五、电路设计---------------------------------------5 电机驱动电路设计------------- -----------------------------5 显示电路设计-------------------------------------------------6 按键设计-----------------------------------------------------6 Proteus 仿真图-----------------------------------------------6 Protel 99se 原理图-------------------------------------------7 六、程序设计---------------------------------------7 七、操作控制--------------------------------------12 八、心得体会--------------------------------------12 九、参考文献--------------------------------------12 一、课程设计目的 通过长达两周的课程设计,加深对《单片机》课程所学理论知识的理解,运用所学理论知识解决实际问题。结合课程设计的内容,学会利用Protel软件绘制电路原理图,掌握电路的设计与组装方法,进行软硬件联机调试。学会查阅相关专业技术资料及设计手册,提高进行独立设计的能力并完成课程设计相关任务。 二、课程设计任务及要求 原始数据及主要任务 1.设计直流电机控制电路。 2.设计数码管显示电路。 3.设计开关电路。 4.分配地址,编写系统程序。 5.利用Protel设计硬件电路原理图和PCB图。 6.软硬件联机调试。

电机正反转控制电路及实际接线图(个人学习用)

三相异步电动机正反转控制电路图原理及plc接线与编程在图1是三相异步电动机正反转控制的电路和继电器控制电路图,图2与3是功能与它相同的PLC控制系统的外部接线图和梯形图,其中,KM1和KM2分别是控制正转运行和反转运行的交流接触器. 在梯形图中,用两个起保停电路来分别控制电动机的正转和反转。按下正转启动按钮SB2,X0变ON,其常开触点接通,Y0的线圈“得电”并自保。使KM1的线圈通电,电机开始正转运行。按下停止按钮SB1,X2变ON,其常闭触点断开,使Y0线圈“失电”,电动机停止运行。 在梯形图中,将Y0与Y1的常闭触电分别与对方的线圈串联,可以保证他们不会同时为ON,因此KM1和KM2的线圈不会同时通电,这种安全措施在继电器电路中称为“互锁”。除此之外,为了方便操作和保证Y0和Y1不会同时为ON,在梯形图中还设置了“按钮互锁”,即将反转启动按钮X1的常闭点与控制正转的Y0的线圈串联,将正转启动按钮X0的常闭触点与控制反转的Y1的线圈串联。设Y0为ON,电动机正转,这是如果想改为反转运行,可

以不安停止按钮SB1,直接安反转启动按钮SB3,X1变为ON,它的常闭触点断开,使Y0线圈“失电”,同时X1的敞开触点接通,使Y1的线圈“得电”,点击正转变为反转。 在梯形图中的互锁和按钮联锁电路只能保证输出模块中的与Y0和Y1对应的硬件继电器的常开触点心不会同时接通。由于切换过程中电感的延时作用,可能会出现一个触点还未断弧,另一个却已合上的现象,从而造成瞬间短路故障。 可以用正反转切换时的延时来解决这一问题,但是这一方案会增大编程的工作量,也不能解决不述的接触触点故障引起的电源短路事故。如果因主电路电流过大或者接触器质量不好,某一接触器的主触点被断电时产生的电弧熔焊而被粘结,其线圈断电后主触点仍然是接通的,这时如果另一个接触器的线圈通电,仍将造成三相电源短路事故。为了防止出现这种情况,应在PLC外部设置KM1和KM2的辅助常闭触点组成的硬件互锁电路(见图2),假设KM1的主触点被电弧熔焊,这时它与KM2线圈串联的辅助常闭触点处于断开状态,因此KM2的线圈不可能得电。 图1中的FR是作过载保护用的热继电器,异步电动机长期严重过载时,经过一定延时,热继电器的常开触点断开,常开触点闭合。其常闭触点与接触器的线圈串联,过载时接触其线圈断电,电机停止运行,起到保护作用。 有的热继电器需要手动复位,即热继电器动作后要按一下它自带的复位按钮,其触点才会恢复原状,及常开触点断开,常闭触点闭合。这种热继电器的常闭触点可以像图2那样接在PLC的输出回路,仍然与接触器的线圈串联,这反而可以节约PLC的一个输入点。 有的热继电器有自动复位功能,即热继电器动作后电机停止转,串接在主回路中的热继电器的原件冷却,热继电器的触点自动恢复原状。如果这种热断电器的常闭触点仍然接在PLC的输出回路,电机停止转动后果一段时间会因热继电器的触点恢复原状而自动重新运转,可能会造成设备和人身事故。因此有自动复位功能的热继电器的常闭触点不能接在PLC的输出回路,必须将它的触点接在PLC的输入端(可接常开触点或常闭触点),用梯形图来实现点击的过载保护。如果用电子式电机过载保护来代替热继电器,也应注意它的复位. 电动机正反转实物接线图

步进电机正反转控制及转速显示

/***************************************************** 程序调试成功 *********************************************************/ #include #define uchar unsigned char #define uint unsigned int sbit wale = P1^4; sbitdula = P1^5; sbitjia_key=P3^3; sbitjian_key=P3^2; sbitZ_key=P3^0; sbitF_key=P3^1; sbit Z_LED=P1^0; sbit F_LED=P1^1; sbit J_LED=P1^2; sbit JA_LED=P1^3; uint flag; ucharnum,show_num=2,maichong=4,table_begin; uchar code SHU[10]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阳数码管驱动信号0---9,不显示 uchar code table[]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9,0xf1,0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3};//电机正反转 void delay(uchar x) { uint y; for(;x>0;x--) for(y=0;y<124;y++); } void display() //显示函数 { uint a; a=num; if(a<10) a=a+1; else a=a%10; wale=1; P0=0xfb; wale=0; dula=1; P0=SHU[(num/10)]; dula=0; delay(10);

单片机控制直流电机正反转

目录 第1章总体设计方案 (1) 1.1 总体设计方案 (1) 1.2 软硬件功能分析 (1) 第2章硬件电路设计 (2) 2.1 单片机最小系统电路设计 (2) 2.2直流电机驱动电路设计 (2) 2.3 数码管显示电路设计 (4) 2.4 独立按键电路设计 (5) 2.5 系统供电电源电路设计 (5) 2.5.1直流稳压电路中整流二极管的选取: (6) 2.5.2直流稳压电路中滤波电容的选取: (6) 第3章系统软件设计 (7) 3.1 软件总体设计思路 (7) 3.2 主程序流程设计 (7) 附录1 总体电路图 (10) 附录2 实物照片 (11) 附录3 C语言源程序 ....................................... 12

实习报告 第1章总体设计方案 1.1 总体设计方案 早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。所以,全数字直流调速控制精度、可靠性和稳定性比模拟直流调速系统大大提高。所以,本次实习采用了驱动芯片来驱动直流电机,并运用单片机编程控制加以实现。 系统设计采用驱动芯片来控制的,所以控制精度和可靠性有了大幅度的提高,并且驱动芯片具有集成度高、功能完善的特点,从而极的大简化了硬件电路的设计。 图1.1 直流电机定时正反转方案 1.2 软硬件功能分析 本次实习直流电机控制系统以STC89C52单片机为控制核心,由按键输入模块、LED显示模块及电机驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,定时不断给L293D直流电机驱动芯片发送PWM波形,H 型驱动电路完成电机正,反转控制;同时单片机不停的将变化的定时时间送到LED数码管完成实时显示。

步进电机正反转程序

步进电机正反转程序 #include //51芯片管脚定义头文件 #include //内部包含延时函数 _nop_(); #define uchar unsigned char #define uint unsigned int uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码 uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码 sbit K1 = P3^2; //正转 sbit K2 = P3^3; //反转 sbit K3 = P3^4; //停止 sbit BEEP = P3^6; //蜂鸣器 /********************************************************/ /* /* 延时t毫秒 /* 11.0592MHz时钟,延时约1ms /* /********************************************************/ void delay(uint t) { uint k; while(t--) {

for(k=0; k<125; k++) { } } } /********************************************************** / void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } } } /********************************************************** / void beep() { uchar i; for (i=0;i<100;i++) { delayB(4); BEEP=!BEEP; //BEEP取反

步进电机正反转程序 一

步进电机正反转程序一 #include <reg51.h> //51芯片管脚定义头文件 #include <intrins.h> //内部包含延时函数_nop_(); #define uchar unsigned char #define uint unsigned int uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码 uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码 sbit K1 = P3^2; //正转 sbit K2 = P3^3; //反转 sbit K3 = P3^4; //停止 sbit BEEP = P3^6; //蜂鸣器 /********************************************************/ /* /* 延时t毫秒 /* 11.0592MHz时钟,延时约1ms /* /********************************************************/ void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++) { } } } /**********************************************************/ void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } } } /**********************************************************/

小型直流电机正反转驱动电路

用8550 和ULN2003 驱动小型直流电机正反转 51 单片机的输出能力有限,带动一两个LED 还是可以的,带动电动机、继电器等等,就难以承担了。 一般来说,常用的扩充51 单片机带负载能力的芯片有:75452、MC1413、ULN2003 系列、L298...。 这几种芯片,做而论道都使用过。 在ULN2003 内部,有七个高耐压、大电流NPN 达林顿管构成的反相器,输入5V 的TTL 电平,输出可达500mA/50V。ULN2803 里面有八个反相器,它们的电气性能是相同的。 ULN2003 (及ULN2803) 的输出端是开路结构,只能驱动灌电流负载;它的内部是反相器;所以,它们都是用输入高电平来驱动的。 在网上发现一个题目:https://www.wendangku.net/doc/4e9792405.html,/question/427268344.html 题目要求用ULN2803 和8550,驱动一个直流电机,控制它正反转。 题目中的电路,用了两片2803,且直接放在了单片机引脚和电机之间,这就有些不合适了。 51 单片机刚开机时,在复位阶段,输出的都是高电平。这个时间,有可能会“较长”,几十毫秒都是可能的。 按照题目中电路,在单片机复位期间,受控电路就都导通了,这就会造成不必要的动作,甚至会造成元器件的损坏。这种情况是不允许发生的。 如果利用ULN2003 中的闲置部分,把单片机的输出信号先反一下相,这就可以避免在输出高电平时产生的误动作。 但是,也要注意,这以后,在正常工作期间,千万就不能都输出低电平了。 当然,在必要的时候,令单片机同时输出两个低电平,也可以达到“自毁”的目的。 ULN2003 + 8550 组合,是做而论道常用的电路器件,用它们构成的电机驱动电路,曾经在做而论道的产品中出现过。 下图是做而论道设计的小型直流电机正反转驱动电路。

步进电机正反转

步进电机控制设计 摘要 步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。结合对步进电机的了解,然后对步进电机的控制原理包括步进电机的控制方式和驱动方式作了系统的说明,采用8051单片机来控制步进电机,并给出了步进电机的双相三拍控制单片机控制和三相六拍的单片机控制的具体实现方法,用汇编程序进行控制运行。控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。 电机的控制系统由AT80C51单片机控制,具有抗干扰能力强,可靠性高而且系统扩展容易等优势。本次课程设计中着重于通过控制脉冲数来控制位移,实现准确定位。基于步进电机本身的优越性和应用的广泛性,这正是用单片机控制步进电机课程设计的实际意义。 关键字:步进电机 ,角位移,单片机 ,脉冲

目录 1 课题描述 (1) 2总体实现原理 (1) 3 步进电机原理及硬件设计 (2) 3.1 单片机电路 (2) 3.1.1 AT89C51单片机的组成结构 (2) 3.1.2 AT89C51单片机的引脚及功能 (4) 3.2步进电机 (6) 3.2.1 步进电机的工作原理 (6) 3.2.2控制原理 (7) 3.2.3步进电机的驱动方式 (8) 3.2.4最小系统 (9) 3.3输入显示部分 (10) 3.4 电源 (10) 4 软件程序设计 (11) 4.1 主程序的设计 (11) 4.2 定时中断设计 (12) 4.3 外部中断设计 (13) 4.4 系统软件程序 (14) 总结 (19) 致谢 (20) 参考文献 (21)

电机正反转接线图

一、三相异步电动机工作原理如下 三相电机绕组接通三相电源产生的磁场在空间旋转,称为旋转磁场,转速的大小由电动机极数和电源频率而定。 转子在磁场中相对定子有相对运动,切割磁杨,形成感应电动势。 转子铜条是短路的,有感应电流产生。转子铜条有电流,在磁场中受到力的作用。转子就会旋转起来。 第一:要有旋转磁场, 第二:转子转动方向与旋转磁场方向相同, 第三:转子转速必须小于同步转速,否则导体不会切割磁场,无感应电流产生,无转矩,电机就要停下来,停下后,速度减慢,由于有转速差,转子又开始转动,所以只要旋转磁场存在,转子总是落后同步转速在转动。 二、电机正反转图和工作工程 三线异步电动机正反转电路图 为了使电动机能够正转和反转,可采用两只接触器KM1、KM2换接电动机三相电源的相序,但两个接触器不能吸合,如果同时吸合将造成电源的短路事故,为了防止这种事故,在电路中应采取可靠的互锁,上图为采用按钮和接触器双重互锁的电动机正、反两方向运行的控制路。线路分析如下:一、正向启动:

1、合上空气开关QF接通三相电源 2、按下正向启动按钮SB3,KM1通电吸合并自锁,主触头闭合接通电动机,电动机这时的相序是L1、L2、L3,即正向运行。 二、反向启动: 1、合上空气开关QF接通三相电源 2、按下反向启动按钮SB2,KM2通电吸合并通过辅助触点自锁,常开主触头闭合换接了 电动机三相的电源相序,这时电动机的相序是L3、L2、L1,即反向运行。 三、互锁环节:具有禁止功能在线路中起安全保护作用 1、接触器互锁:KM1线圈回路串入KM2的常闭辅助触点,KM2线圈回路串入KM1的常闭触点。当正转接触器KM1线圈通电动作后,KM1的辅助常闭触点断开了KM2线圈回路,若使KM1得电吸合,必须先使KM2断电释放,其辅助常闭触头复位,这就防止了KM1、K M2同时吸合造成相间短路,这一线路环节称为互锁环节。 2、按钮互锁:在电路中采用了控制按钮操作的正反传控制电路,按钮SB2、SB3都具有一对常开触点,一对常闭触点,这两个触点分别与KM1、KM2线圈回路连接。例如按钮SB2的常开触点与接触器KM2线圈串联,而常闭触点与接触器KM1线圈回路串联。按钮SB3的常开触点与接触器KM1线圈串联,而常闭触点压KM2线圈回路串联。这样当按下SB2时只能有接触器KM2的线圈可以通电而KM1断电,按下SB3时只能有接触器KM1的线圈可以通电而KM2断电,如果同时按下SB2和SB3则两只接触器线圈都不能通电。这样就起到了 互锁的作用。 四、电动机正向(或反向)启动运转后,不必先按停止按钮使电动机停止,可以直接按反 向(或正向)启动按钮,使电动机变为反方向运行。

相关文档
相关文档 最新文档