电机方案设计书实验步进电机控制实验
步进电机实验报告
步进电机实验报告
实验目的:
掌握步进电机的工作原理以及驱动方式,通过实验观察步进电机的运动特性和控制方式。
实验材料:
1. 步进电机
2. 步进电机驱动器
3. 控制器(如Arduino)
4. 电源
5. 连接线
实验步骤:
1. 将步进电机与步进电机驱动器进行连接,按照正确的接线顺序进行连接。
2. 将步进电机驱动器连接到控制器。
3. 连接电源,设置合适的电压和电流。
4. 编写控制程序,实现不同的步进电机控制方式,如全步进、半步进等。
5. 运行控制程序,观察步进电机的运动情况。
实验结果:
在不同的步进电机控制方式下,步进电机的运动情况各有不同。
在全步进模式下,步进电机每次转动一个固定角度;在半步进模式下,步进电机每次转动半个固定角度。
通过控制程序可以灵活控制步进电机的运动方式和速度。
实验讨论:
步进电机是一种精密控制设备,广泛应用于机械设备中。
在实际应用中,可以根据实际需求选择合适的步进电机控制方式,并通过调整控制程序中的参数来实现精确的运动控制。
结论:
通过本次实验,我们掌握了步进电机的工作原理、驱动方式以及控制方法,进一步加深了对步进电机的理论和实践认识。
步进电机实验报告册(3篇)
第1篇一、实验目的1. 熟悉步进电机的工作原理和特性。
2. 掌握步进电机的驱动方式及其控制方法。
3. 学会使用常用实验设备进行步进电机的调试和测试。
4. 了解步进电机在不同应用场景下的性能表现。
二、实验设备1. 步进电机:选型为双极性四线步进电机,型号为NEMA 17。
2. 驱动器:选型为A4988步进电机驱动器。
3. 控制器:选型为Arduino Uno开发板。
4. 电源:选型为12V 5A直流电源。
5. 连接线、连接器、电阻等实验配件。
三、实验原理步进电机是一种将电脉冲信号转换为角位移或线位移的电机。
它具有以下特点:1. 转动精度高,步距角可调。
2. 响应速度快,控制精度高。
3. 结构简单,易于安装和维护。
4. 工作可靠,寿命长。
步进电机的工作原理是:通过控制驱动器输出脉冲信号,使步进电机内部的线圈依次通电,从而产生步进运动。
四、实验步骤1. 搭建实验电路(1)将步进电机连接到驱动器上,确保电机线序正确。
(2)将驱动器连接到Arduino Uno开发板上,使用连接线连接相应的引脚。
(3)连接电源,确保电源电压与驱动器要求的电压一致。
2. 编写控制程序(1)使用Arduino IDE编写程序,实现步进电机的正转、反转、调速等功能。
(2)通过串口监视器观察程序运行情况,调试程序。
3. 调试步进电机(1)测试步进电机的正转、反转功能,确保电机转动方向正确。
(2)调整步进电机的转速,观察电机运行状态,确保转速可调。
(3)测试步进电机的步距角,确保步进精度。
4. 实验数据分析(1)记录步进电机的正转、反转、调速等性能参数。
(2)分析步进电机的运行状态,评估其性能。
五、实验结果与分析1. 正转、反转测试步进电机正转、反转功能正常,转动方向正确。
2. 调速测试步进电机转速可调,调节范围在1-1000步/秒之间。
3. 步距角测试步进电机的步距角为1.8度,与理论值相符。
4. 实验数据分析步进电机的性能指标符合预期,可满足实验要求。
步进电控制实验报告
一、实验目的1. 理解步进电机的工作原理及其应用领域。
2. 掌握单片机控制步进电机的技术方法。
3. 熟悉步进电机的驱动电路设计。
4. 通过实验验证步进电机控制系统的性能。
二、实验原理步进电机是一种将电脉冲信号转换为角位移的电机,具有精度高、响应快、控制简单等优点。
其工作原理是:当输入一定频率的脉冲信号时,步进电机按照一定的步距角转动。
步进电机的步距角与线圈匝数、绕组方式有关。
本实验采用单片机控制步进电机,通过编写程序实现步进电机的正转、反转、停止、转速调节等功能。
三、实验设备1. 单片机实验平台:包括51单片机、电源、按键、数码管等。
2. 步进电机驱动模块:用于驱动步进电机,包括驱动电路和步进电机本体。
3. 实验指导书。
四、实验步骤1. 搭建实验电路(1)连接单片机实验平台,包括电源、按键、数码管等。
(2)连接步进电机驱动模块,包括电源、控制线、步进电机本体等。
(3)检查电路连接是否正确,确保无误。
2. 编写控制程序(1)初始化单片机相关端口,包括P1口、定时器等。
(2)编写步进电机控制函数,包括正转、反转、停止、转速调节等功能。
(3)编写主函数,根据按键输入实现步进电机的控制。
3. 下载程序(1)将编写好的程序下载到单片机实验平台。
(2)检查程序是否下载成功。
4. 测试实验(1)观察数码管显示的转速挡次和转动方向。
(2)通过按键控制步进电机的正转、反转、停止和转速调节。
(3)观察步进电机的转动情况,验证控制程序的正确性。
五、实验结果与分析1. 实验结果(1)通过按键控制步进电机的正转、反转、停止和转速调节。
(2)数码管显示转速挡次和转动方向。
(3)步进电机按照设定的方向和转速转动。
2. 实验分析(1)通过实验验证了单片机控制步进电机的可行性。
(2)实验结果表明,控制程序能够实现步进电机的正转、反转、停止和转速调节等功能。
(3)实验过程中,需要对步进电机驱动模块进行合理设计,以确保步进电机的稳定运行。
步进电机控制实验报告
步进电机控制实验报告开课学院及实验室:学院年级、专业、班姓名学号实验课程名称计算机控制技术成绩实验项目名称步进电机控制实验指导老师一、实验目的1.了解步进电机的工作原理。
2.掌握步进电机的驱动及编程方法。
二、实验原理步进电机是一种电脉冲转化为角位移的执行机构。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的。
通过设定脉冲数来使步进电机转过一定的角度。
步进电机多为永磁感应式,有两相、四相、六相等多种,实验所用电机为四相八拍式。
三、使用仪器、材料1.TPCC-III计算机控制技术实验箱一台。
2. 数字式万用表一个。
3.微型计算机一台(安装“DICE计算机控制实验软件”)。
四、实验步骤本实验使用的AD35-02M型四相八拍电机,电压为DC12V,其励磁线圈及励磁顺序如下图3-1。
图3-1 励磁线圈及励磁顺序图3-2 实验接线图表3-1 8255B口输出电平在各步中的情况步骤1:按图3-2接线:步骤2:在汇编程序编辑界面输入程序,将宏汇编程序经过汇编,连接后形成.EXE文件。
打开调试窗口,复位,待出现“Welcome to you!”,装入系统,输入命令“G=2000↙”。
EXP3.ASM汇编程序如下:STACK SEGMENT STACKDW 256 DUP(?)STACK ENDSDATA SEGMENTTABLE DB 01H,03H,02H,06H,04H,0CH,08H,09H ;Step of motorDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMAIN: MOV AL,80H ;Initiate 8255 B(OUT)OUT 63H,ALA1: MOV BX,OFFSET TABLEMOV CX,0008H ; Number of stepA2: MOV AL,[BX] ; 8255 outOUT 61H,AL。
步进电机控制实验
步进电机控制实验一、实验目的1、了解步进电机控制的基本原理。
2、掌握控制步进电机转动的编程方法。
二、实验内容1、按图53连接线路,利用8255输出脉冲序列,开关K0~K6控制步进电机转速,K7控制步进电机转向。
8255 CS接288H~28FH。
PA0~PA3接BA~BD;PC0~PC7接K0~K7。
2、编程:当K0~K6中某一开关为“1”(向上拨)时步进电机启动。
K7向上拨电机正转,向下拨电机反转。
三、实验说明步进电机驱动原理是通过对每相线圈中的电流的顺序切换来使电机作步进式旋转。
驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。
如图54所示:本实验使用的步进电机用直流+5V电压,每相电流为0.16A,电机线圈由四相组成:即:φ1(BA);φ2(BB);φ3(BC);φ4(BD)驱动方式为二相激磁方式,各线圈通电顺序如表。
表中首先向φ1线圈-φ2线圈输入驱动电流,接着φ2-φ3,φ3-φ4,φ4-φ1,又返回到φ1-φ2,按这种顺序切换,电机轴按顺时针方向旋转。
实验可通过不同长度的延时来得到不同频率的步进电机输入脉冲,从而得到多种步进速度。
四、实验原理图五、实验流程图六、Asm程序DATA SEGMENTIoport EQU 0dc00h-0280hP55A EQU ioport+288H ;8255 A PORT OUTPUTP55C EQU ioport+28AH ;8255 C PORT INPUTP55CTL EQU ioport+28BH ;8255 COUTRL PORTBUF DB 0MES DB 'K0-K6 ARE SPEED CONTROL',0AH,0DH DB 'K6 IS THE LOWEST SPEED ',0AH,0DHDB 'K0 IS THE HIGHEST SPEED',0AH,0DHDB 'K7 IS THE DIRECTION CONTROL',0AH,0DH,'$' DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATAMOV DS,AXMOV AX,DATAMOV DS,AXMOV DX,OFFSET MESMOV AH,09INT 21HMOV DX,P55CTLMOV AL,8BHOUT DX,AL ;8255 C INPUT, A OUTPUTMOV BUF,33HOUT1: MOV AL,BUFMOV DX,P55AOUT DX,ALpush dxMOV AH,06hmov dl,0ffhINT 21H ;ANY KEY PRESSEDpop dxJE IN1MOV AH,4CHINT 21HIN1: MOV DX,P55CIN AL,DX ;INPUT SWITCH VALUETEST AL,01HJNZ K0TEST AL,02HJNZ K1TEST AL,04HJNZ K2TEST AL,08HJNZ K3TEST AL,10HJNZ K4TEST AL,20HJNZ K5TEST AL,40HJNZ K6STOP: MOV DX,P55AMOV AL,0FFHJMP OUT1K0: MOV BL,10HSAM: TEST AL,80HJZ ZX0K1: MOV BL,18HJMP SAMK2: MOV BL,20HJMP SAMK3: MOV BL,40HJMP SAMK4: MOV BL,80HJMP SAMK5: MOV BL,0C0HJMP SAMK6: MOV BL,0FFHJMP SAMZX0: CALL DELAYMOV AL,BUFROR AL,1MOV BUF,ALJMP OUT1NX0: CALL DELAYMOV AL,BUFROL AL,1MOV BUF,ALJMP OUT1DELAY PROC NEARDELAY1: MOV CX,05A4H DELAY2: LOOP DELAY2DEC BLJNZ DELAY1RETDELAY ENDPCODE ENDSEND START七、Cpp程序/******************//* 步进电机 *//******************/#include <stdio.h>#include <conio.h>#include"ApiEx.h"#pragma comment(lib,"ApiEx.lib")void main(){BYTE d ata;int buf = 0x33,d;printf("--------------------EXP27_19_BJDJ---------------------\n");printf("1. 8255 (PA0-PA3) === BJDJ (BA-BD)\n");printf("2. I/O (288-28F) === 8255 (CS)\n");printf("3. 8255 (PC0-PC7) === TPC (K0-K7)\n");printf("4. BJDJ (J5) === (BJDJ)\n");printf("Press any key to begin!\n\n");getch();printf("K0-K6 are speed control \n");printf("K0 is the lowest speed \n");printf("K6 is the highest speed \n");printf("K7 is the direct control \n");printf("press any key to return! \n");if(!Startup()) /*打开设备*/{printf("ERROR: Open Device Error!\n");return;}PortWriteByte(0x28b,0x8b); /*设置8255工作方式,C口输入, A口输出*/ while(!kbhit()){PortReadByte(0x28a,&data);if (data & 1) d = 1200;else if (data & 2) d = 600;else if (data & 4) d = 500;else if (data & 8) d = 300;else if (data & 16) d = 200;else if (data & 32) d = 100;else if (data & 64) d = 50;else d = 0;if (d != 0){Sleep(d);if (data & 128)buf = ((buf&1)<<7)|(buf>>1);elsebuf = ((buf&128)>>7)|(buf<<1);PortWriteByte(0x288,buf);}elsePortWriteByte(0x288,0xff);}Cleanup(); /*关闭设备*/ }八、实验结果k0-k6 ARE SPEED CONTROLk6 IS THE LOWEST SPEEDk0 IS THE HIGHEST SPEEDk7 IS THE DIRECTION CONTROL。
电机传动实验-PLC步进电动机控制实验
PLC步进电动机控制实验一、步进电机与步进电机驱动器的接线图步进电机驱动器与PLC连接,SH-2H042Ma步进电机驱动器的输入信号为CP+、CP-和DIR+、DIR-,其连接方式有三种:①共阳极方式:把CP+和DIR+接在一起作为共阳端OPTO(接外部系统的+5V),脉冲信号接入CP-端,方向信号接入DIR-端;②共阴极方式:把CP-和DIR-接在一起作为共阴端(接外部系统的GND),脉冲信号接入CP+端,方向信号接入DIR+端;③差动方式:直接连接。
二、PLC接线图PLC接线图(带驱动器)PLC 接线图(不带驱动器,输出电源电压应与步进电动机额定电压匹配) SB1为启动按钮,SB2为停止按钮,SB3为加速按钮,SB4为减速按钮。
三、按带驱动器的PLC 接线图的方式编写PLC 程序四、附录:采用西门子S7-300PLC 控制三相步进电机的过程例子电路说明:输出: A 相加电压:Q0.0B 相加电压:Q0.1C 相加电压:Q0.2 启动指示灯:Q0.3三相单三拍运行方式:Q0.4三相双三拍运行方式:Q0.5 三相单六拍运行方式:Q0.6 输出脉冲显示灯: Q0.7三相单三拍运行方式三相双三拍运行方式三相单六拍运行方式编程方法:1.使用定时器指令实现各种时序脉冲的要求:使用定器产生不同工作方式下的工作脉冲,然后按照控制开关状态输出到各相对应的输出点控制步进电机。
M0.0作为总控制状态位,控制脉冲发生指令是否启动。
一旦启动,采用T0、T1、T2以及它们的组合可以得到三相单三拍和三相双三拍的两种工作方式下,各相的脉冲信号。
如T0的状态为三相单三拍工作状态下A相的脉冲。
同理可使用类似程序得到三相单六拍时各相所需的脉冲信号。
2.使用移位指令实现各相所需的脉冲信号。
例如在MW10中进行移位,每次移位的时间为1秒钟。
如图为三相单六拍正向时序流程图,三相单三拍可利用相同的流程图,从M11.1开始移位,每次移两位,而三相双三拍从M11.2开始,每次移两位。
控制步进电机实验报告(3篇)
第1篇一、实验目的1. 理解步进电机的工作原理及控制方法。
2. 掌握单片机与步进电机驱动模块的接口连接方法。
3. 学习使用C语言编写程序,实现对步进电机的正反转、转速和定位控制。
4. 通过实验,加深对单片机控制系统的理解。
二、实验原理步进电机是一种将电脉冲信号转换为角位移或线位移的电机,其特点是控制精度高、响应速度快、定位准确。
步进电机控制实验主要涉及以下几个方面:1. 步进电机驱动模块:常用的驱动模块有ULN2003、A4988等,它们可以将单片机的数字信号转换为步进电机的控制信号。
2. 单片机:单片机是整个控制系统的核心,负责接收按键输入、处理数据、控制步进电机驱动模块等。
3. 步进电机:步进电机分为单相、双相和三相等类型,本实验使用的是双相四线步进电机。
三、实验设备1. 单片机开发板:例如STC89C52、STM32等。
2. 步进电机驱动模块:例如ULN2003、A4988等。
3. 双相四线步进电机。
4. 按键。
5. 数码管。
6. 电阻、电容等元件。
7. 电源。
四、实验步骤1. 硬件连接(1)将步进电机驱动模块的输入端(IN1、IN2、IN3、IN4)分别连接到单片机的P1.0、P1.1、P1.2、P1.3口。
(2)将按键的输入端连接到单片机的P3.0口。
(3)将数码管的段选端连接到单片机的P2口。
(4)将步进电机驱动模块的电源端连接到电源。
(5)将步进电机连接到驱动模块的输出端。
2. 编写程序(1)初始化单片机I/O端口,设置P1口为输出端口,P3.0口为输入端口,P2口为输出端口。
(2)编写按键扫描函数,用于读取按键状态。
(3)编写步进电机控制函数,实现正反转、转速和定位控制。
(4)编写主函数,实现以下功能:a. 初始化数码管显示;b. 读取按键状态;c. 根据按键状态调用步进电机控制函数;d. 更新数码管显示。
3. 调试程序(1)将程序烧写到单片机中;(2)打开电源,观察数码管显示和步进电机运行状态;(3)根据需要调整程序,实现不同的控制效果。
步进电机控制实验报告
步进电机控制实验报告步进电机的控制实验报告一、实验目的1. 学习步进电机的工作原理。
2. 了解步进电机的驱动电路。
3. 学会用单片机控制步进电机。
二、实验器件1. TIVA C 系列芯片,电机模块和LCD显示模块。
2. 电脑以及CCS开发软件。
三、实验内容设计一个简单的程序驱动步进电机并控制转速,通过LCD板上的滚轮装置可以调节步进电机的转速。
四、实验原理双极性四线步进电机:一般双极性四线步进电机线序是A B A/ B/, 其中A 与A/是一个线圈,B和B/是一个线圈,一般这种驱动需要的是H桥电路。
H双极性四线步进电机驱动相序:1.单相四拍通电驱动时序正转:A/ B A B/反转:B/ A B A/2.双相通电四拍驱动时序正转:A/B AB AB/ A/B/反转:A/B/ AB/ AB A/B3.半步八拍驱动时序正转:A/ A/B B AB A AB/ B/ A/B/A/B/ B/ AB/ A AB B A/B A/反转:*****驱动芯片:*****为玩具、打印机及其他机电一体化应用提供了一款双通道桥式电机驱动器解决方案。
该器件具有两个H桥驱动器,并能够驱动两个直流(DC)电刷电机、一个双极性步进电机、螺线管或其他电感性负载。
每个H桥的输出驱动器模块由N沟道功率MOSFET组成,这些MOSFET被配置成一个H桥,以驱动电机绕组。
每个H桥都包括用于调节或限制绕组电流的电路。
借助正确的PCB设计,*****的每个H桥能够连续提供高达1.5-ARMS(或DC)的驱动电流(在25℃和采用一个5VVM电源时)。
每个H桥可支持高达2A的峰值电流。
在较低的VM电压条件下,电流供应能力略有下降。
该器件提供了利用一个故障输出引脚实现的内部关断功能,用于:过流保护、短路保护、欠压闭锁和过热。
另外,还提供了一种低功耗睡眠模式。
*****内置于16引脚HTSSOP封装或采用PowerPAD?的QFN封装(绿色环保:RoHS和无Sb/Br)。
步进电机控制实验实验报告及程序
实验九步进电机控制实验姓名专业通信工程学号成绩一、实验目的1.掌握keil C51软件与proteus软件联合仿真调试的方法;2.掌握步进电机的工作原理及控制方法;3.掌握步进电机控制的不同编程方法;二、实验仪器与设备1.微机1台2.keil C51集成开发环境3.Proteus仿真软件三、实验内容1.用Proteus设计一四相六线步进电机控制电路。
要求利用P1口作步进电机的控制端口,通过达林顿阵列ULN2003A驱动步进电机。
基本参考电路见后面附图。
2.编写程序,实现步进电机的正反转控制。
正反转时间分别持续10S时间,如此循环。
3.设计一可调速步进电机控制电路。
P3.2~P3.5分别接按键k1~k4,其中k1为正反转控制按键,k2为加速按键,k3为减速按键,k4为启动/停止按键,要求速度7档(1~7)可调,加减速各设3档,复位时位于4档,要求每档速度变化明显。
该步进电机控制电路在以上电路的基础上自行修改。
四、实验原理1.步进电机控制原理:1)步进电机是利用电磁铁的作用原理,步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
每来一个电脉冲,步进电机转动一定角度,带动机械移动一小段距离。
特点A.来一个脉冲,转一个步距角。
B.控制脉冲频率,可控制电机转速。
C.改变脉冲顺序,可改变转动方向。
2)以反应式步进电机为例说明步进电机的结构和工作原理。
三相反应式步进电动机的原理结构图如下,定子内圆周均匀分布着六个磁极,磁极上有励磁绕组,每两个相对的绕组组成一相。
转子有四个齿。
给A相绕组通电时,转子位置如图(a),转子齿偏离定子齿一个角度。
由于励磁磁通力图沿磁阻最小路径通过,因此对转子产生电磁吸力,迫使转子齿转动,当转子转到与定子齿对齐位置时(图b),因转子只受径向力而无切线力,故转矩为零,转子被锁定在这个位置上。
由此可见:错齿是助使步进电机旋转的根本原因。
3)三相反应式步进电动机的控制原理①三相单三拍:A 相→ B 相→ C 相→ A 相②三相六拍:A→AB →B →BC →C → CA→ A③三相双三拍:AB →BC →CA→AB4)步距角计算公式:θ—步距角 Z r—转子齿数 m —每个通电循环周期的拍数2、ULN2003A:七达林顿阵列ULN2003A是集成达林顿管反相驱动电路,内部还集成了一个消线圈反电动势的二极管,可用来驱动电机、继电器等功率器件。
步进电机控制实验报告
一、 实验要求利用P0输出脉冲序列,74LS244输入开关量,开关K2-K8控制步进电机转换(分6挡),K0、K1控制步进电机转向。
必须要K2-K8中一开关和K0、K1中一开关同时为‘1’时步进电机才启动,其他情况步进电机不工作。
进电机才启动,其他情况步进电机不工作。
步进电机驱动原理是通过对它每线圈中的电流的顺序切换来使电机作步进式旋转。
驱动电路又脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。
微电脑控制步进电机最合适。
机最合适。
二、 试验目的1、 了解步进电机控制的基本原理。
了解步进电机控制的基本原理。
2、 掌握控制步进电机转动编程方法。
掌握控制步进电机转动编程方法。
三、步进电机工作原理步进电机是将给定的电脉冲信号转变为角位移或线位移的开环控制元件。
步进电机是将给定的电脉冲信号转变为角位移或线位移的开环控制元件。
给定一个电脉冲信号,步进电机转子就转过相应的角度,这个角度就称作该步进电机的步距角。
目前常用步进电机的步距角大多为1.8度(俗称一步)或0.9度(俗称半步)。
以步距角为0.9度的进步电机来说,当我们给步进电机一个电脉冲信号,步进电机就转过0.9度;给两个脉冲信号,步进电机就转过1.8度。
以此类推,连续给定脉冲信号,步进电机就可以连续运转。
由于电脉冲信号与步进电机转角存在的这种线性关系,使得步进电机在速度控制、位置控制等方面得到了广泛的应用。
控制、位置控制等方面得到了广泛的应用。
步进电机的使用至少需要三个方面的配合,一是电脉冲信号发生器,它按照给定的设置重复为步进电机输送电脉冲信号,目前这种信号大多数由可编程控制器或单片机来完成;二是驱动器(信号放大器),它除了对电脉冲信号进行放大、驱动步进电机转动以外,还可以通过它改善步进电机的使用性能,事实上它在步进电机系统中起着重要的作用,一般一种步进电机可以根据不同的工况具有多种驱动器;进电机可以根据不同的工况具有多种驱动器;三是步进电机,三是步进电机,它有多种控制原理和型号,它有多种控制原理和型号,现现在常用的有反应式、感应子式、混合式等。
步进电机控制实验
步进电机控制实验一、实验目的:了解步进电机工作原理,掌握用单片机的步进电机控制系统的硬件设计方法,熟悉步进电机驱动程序的设计与调试,提高单片机应用系统设计和调试水平。
二、实验内容:编写并调试出一个实验程序按下图所示控制步进电机旋转:三、工作原理:步进电机是工业过程控制及仪表中常用的控制元件之一,例如在机械装置中可以用丝杠把角度变为直线位移,也可以用步进电机带螺旋电位器,调节电压或电流,从而实现对执行机构的控制。
步进电机可以直接接收数字信号,不必进行数模转换,用起来非常方便。
步进电机还具有快速启停、精确步进和定位等特点,因而在数控机床、绘图仪、打印机以及光学仪器中得到广泛的应用。
步进电机实际上是一个数字/角度转换器,三相步进电机的结构原理如图所示。
从图中可以看出,电机的定子上有六个等分磁极,A、A′、B、B′、C、C ′,相邻的两个磁极之间夹角为60o,相对的两个磁极组成一相(A-A′,B-B′,C-C′),当某一绕组有电流通过时,该绕组相应的两个磁极形成N极和S极,每个磁极上各有五个均匀分布矩形小齿,电机的转子上有40个矩形小齿均匀地分布的圆周上,相邻两个齿之间夹角为9°。
当某一相绕组通电时,对应的磁极就产生磁场,并与转子形成磁路,如果这时定子的小齿和转子的小齿没有对齐,则在磁场的作用下,转子将转动一定的角度,使转子和定子的齿相互对齐。
由此可见,错齿是促使步进电机旋转的原因。
三相步进电机结构示意图例如在三相三拍控制方式中,若A相通电,B、C相都不通电,在磁场作用下使转子齿和A相的定子齿对齐,我们以此作为初始状态。
设与A相磁极中心线对齐的转子的齿为0号齿,由于B相磁极与A相磁极相差120°,不是9°的整数倍(120÷9=40/3),所以此时转子齿没有与B相定子的齿对应,只是第13号小齿靠近B相磁极的中心线,与中心线相差3°,如果此时突然变为B相通电,A、C相不通电,则B相磁极迫使13号转子齿与之对齐,转子就转动3°,这样使电机转了一步。
步进机电机实验报告
一、实验目的1. 了解步进电机的工作原理和特点。
2. 掌握步进电机的驱动方式和控制方法。
3. 学会使用PLC编程控制步进电机。
4. 培养动手能力和实验技能。
二、实验原理步进电机是一种将电脉冲信号转换成角位移的电动机,具有精度高、响应快、控制简单等优点。
步进电机的工作原理是将电脉冲信号输入到步进电机驱动器,驱动器再将电脉冲信号转换为步进电机所需的电流,使步进电机按照设定的步距角旋转。
三、实验仪器与设备1. PLC编程器2. 步进电机驱动器3. 步进电机4. 电源5. 连接导线6. 电脑四、实验步骤1. 步进电机驱动器与PLC的连接:将步进电机驱动器的输入端连接到PLC的输出端口,将电源连接到步进电机驱动器。
2. 步进电机与驱动器的连接:将步进电机连接到驱动器的输出端。
3. PLC编程:在PLC编程器中编写步进电机控制程序。
(1)设置步进电机控制参数:包括步进电机的步距角、脉冲频率等。
(2)编写步进电机控制程序:编写程序控制步进电机的启动、停止、正转、反转等功能。
4. 程序下载与运行:将编写好的程序下载到PLC中,运行程序控制步进电机。
五、实验结果与分析1. 步进电机启动:按下启动按钮,步进电机开始旋转。
2. 步进电机正转:按下正转按钮,步进电机按照设定的步距角正转。
3. 步进电机反转:按下反转按钮,步进电机按照设定的步距角反转。
4. 步进电机停止:按下停止按钮,步进电机停止旋转。
六、实验总结通过本次实验,我们了解了步进电机的工作原理和特点,掌握了步进电机的驱动方式和控制方法。
同时,学会了使用PLC编程控制步进电机,提高了我们的动手能力和实验技能。
以下为实验过程中的关键代码段:1. 步进电机控制参数设置:```步距角= 1.8°脉冲频率 = 1000Hz```2. 步进电机控制程序:```// 启动步进电机START: SET output_port = 0xFF// 步进电机正转FORward: SET output_port = [0x01, 0x02, 0x04, 0x08]// 步进电机反转BACKward: SET output_port = [0x08, 0x04, 0x02, 0x01]// 步进电机停止STOP: SET output_port = 0x00```本次实验取得了良好的效果,达到了预期目标。
步进电机实验报告(1)
步进电机控制实验一、实验目的步进电机作为一种数字控制电机,可以准确的控制角度和距离应用非常广泛,本实验利用SPCE061A单片机通过自己编写程序实现步进电机的控制使我们加深对步进电机的了解,同时学会使用步进电机的驱动芯片WZM-2H042M。
另外要求我们掌握单片机控制步进电机的硬件接口电路,以及熟悉步进电机的工作特性。
二、实验内容根据步进电机驱动电路,使用单片机驱动步进电机,控制步进电机正转、反转操作。
三、实验要求按实验内容编写程序,并在实验仪上调试和验证。
四、实验说明1.步进电动机有三线式、五线式、六线式三种,但其控制方式均相同,必须以脉冲电流来驱动。
若每旋转一圈以20个励磁信号来计算,则每个励磁信号前进18度,其旋转角度与脉冲数成正比,正、反转可由脉冲顺序来控制。
2.步进电动机的励磁方式可分为全部励磁及半步励磁,其中全步励磁又有1相励磁及2相励磁之分,而半步励磁又称1-2相励磁。
图为步进电动机的控制等效电路,适应控制A、B、/A、/B的励磁信号,即可控制步进电动机的转动。
每输出一个脉冲信号,步进电动机只走一步。
因此,依序不断送出脉冲信号,即可步进电动机连续转动。
a.1相励磁法:在每一瞬间只有一个线圈导通。
消耗电力小,精确度良好,但转矩小,振动较大,每送一励磁信号可走18度。
若欲以1相励磁法控制步进电动机正转,其励磁顺序如图所示。
若励磁信号反向传送,则步进电动机反转。
励磁顺序: A→B→C→D→AA B C DSTEP1 1 0 0 02 0 1 0 03 0 0 1 04 0 0 0 1b.2相励磁法:在每一瞬间会有二个线圈同时导通。
因其转矩大,振动小,故为目前使用最多的励磁方式,每送一励磁信号可走18度。
若以2相励磁法控制步进电动机正转,其励磁顺序如图所示。
若励磁信号反向传送,则步进电动机反转。
励磁顺序: AB→BC→CD→DA→ABSTEP A B C D1 1 1 0 02 0 1 1 03 0 0 1 14 1 0 0 1c.1-2相励磁法:为1相与2相轮流交替导通。
实验二 步进电机控制实验
实验二步进电机控制实验一、实验目的1、熟悉PLC编程软件的使用。
2、了解运动控制系统的组成结构。
3、掌握步进电机驱动器的使用。
4、掌握步进电机控制的PLC程序的编写。
二、实验设备1、安装有WINDOWS操作系统的PC机一台(具有STEP 7 MicroWIN软件)2、立体车库实验系统一台3、PLC编程电缆一根三、实验要求1、通过手动按钮控制X轴的左右移动。
2、通过手动按钮控制Y轴的上下移动。
3、通过手动按钮控制Z轴的伸出与缩回。
四、端口分配及接线图17I2.0 X轴限位218I2.1 Y轴限位119I2.2 Y轴限位220Q0.0 X步进电机脉冲信号输入正端21Q0.1 Y步进电机脉冲信号输入正端22Q0.2 X步进电机方向信号输入正端23Q0.3 Y步进电机方向信号输入正端24Q0.4 X步进电机工作指示灯25Q0.5 Y步进电机工作指示灯26Q0.6 Z轴电机前进27Q0.7 Z轴电机后退2.接线图(西门子)五、实验步骤1、使用STEP 7 MicroWIN编写PLC控制X步进电机、Y步进电机和Z轴电机正反转运行的控制程序。
2、定义控制按钮:“X/取”(I0.3)按钮控制X轴的移动;“Y/放”(I0.4)按钮控制Y轴的移动;“方向”按钮用来切换X轴和Y轴的移动方向;“操作”按钮控制气缸的伸出或缩回,Z轴电机作伸出还是缩回运动根据铲架限位开关的位置来判断和设计程序。
3、PC与PLC按正确方式连接。
4、PLC的工作状态开关放在“STOP”。
5、据实验要求的情况下,按下述要求编写程序,并将程序运行通过。
六、参考程序按照X步进电动机控制要求内容,参考程序如下:。
实验九 步进电机控制实验
步进电机控制试验一、实验目的1、掌握keilc51软件与protues软件的联合仿真调试的方法2、掌握步进电机的工作原理及控制方法3、掌握步进电机的不同编程方法二、实验内容1、用protues设计一四相六线步进电机控制电路。
要求利用p1口做为步进电机的控制接口,通过达林顿阵列ULN2003A。
参考电路给出。
2、编写程序,实现步进电机的正反转控制。
正反转时间分别持续10秒时间。
如此循环。
3、设计一可调速度步进电机控制电路。
P3.0~P3.2分别接按键K1~K3,其中K1为正反转控制按键,K2为加速按键,K3为减速按键,要求速度7档可调,加减速各设三档,复位时位于4档,要求每档速度变化明显。
三、实验说明1、步进电机控制原理;(1)步进电机是利用电磁铁的作用原理,将脉冲信号换为线位移或角位移的电机。
每来一个脉冲,步进电机转动一定的角度,带动机械移动一小段距离。
特点:来一个脉冲,转动一个步距角。
控制脉冲频率,可控制电机转速。
改变脉冲顺序,可改变转动方向。
2、ULN2003A:七达林顿阵列ULA2003A是集成达林顿管反向驱动电路,内部还集成了一个消线圈反电动势的二极管,可以用来驱动电机、继电器等功率器件。
它是双列16脚封装、NPN 晶体管矩阵,最大驱动电压50v,输入电压5v。
四、实验步骤1、用proteus设计电路2、在keilc51中编写键盘识别程序,编写通过后,与proteus联合调试3、观察1602是否能正确显示五、实验电路1、实验电路见下图:2、实验源程序见附录。
六、实验总结1、步进电机的工作原理及控制方法,来一个脉冲,转动一个步距角。
控制脉冲频率,可控制电机转速。
通过改变脉冲顺序,可改变转动方向。
2、掌握ULN2003A七达林顿阵列的使用方法,ULN2003A是集成达林顿管反向驱动电路,内部还集成了一个消线圈反电动势的二极管,具有较强的驱动能力,可以用来驱动电机、继电器等功率器件。
3、利用定时器中断检测按键时,因为每20ms就扫描一次键盘,而若按下一次按键时间过长,会引起一次按键重复检测的情况,可设置一个标志位,反映按键是否被检测完,等一侧按键完成后在接受下一次按键触发。
单片机步进电机控制实验报告
单片机步进电机控制实验报告1. 实验背景步进电机是一种特殊的直流电机,具有精确定位、运行平稳等特点,广泛应用于自动化控制系统中。
本实验旨在通过单片机控制步进电机的转动,加深对步进电机原理和控制方法的理解。
2. 实验器材和原理实验器材•单片机开发板•步进电机•驱动模块•连接线实验原理步进电机按照一定步进角度进行转动,每转动一定步数,即转动特定的角度。
步进电机的控制需要通过驱动模块来实现,驱动模块与单片机进行连接,通过单片机的输出控制步进电机的转动。
3. 实验步骤步骤1:连接电路将单片机开发板与驱动模块通过连接线连接,确保连接线的接口正确连接。
步骤2:编写程序使用C语言编写控制步进电机的程序,并上传到单片机开发板中。
程序需要实现控制步进电机转动的功能,可以根据需要设置转动的方向和步数。
步骤3:设置参数根据实际情况设置步进电机的转动参数,例如转动方向、转动速度等。
确保设置的参数符合实验要求。
步骤4:开始实验将步骤1和步骤2准备好的电路和程序连接在一起,并开启电源。
通过单片机的输出控制步进电机的转动,观察步进电机的转动情况。
步骤5:记录实验结果记录步进电机的转动情况,包括转动方向、转动步数等信息。
观察步进电机的转动是否符合预期,记录任何异常情况。
步骤6:实验总结根据实验结果进行总结和分析,评估步进电机控制的效果。
分析实验中可能出现的问题和改进方向,并提出改进措施。
4. 实验注意事项•在实验过程中,严格按照操作步骤进行,避免出现操作失误。
•注意检查电路连接是否正确,确保连接稳固可靠。
•在进行步进电机控制时,注意控制信号的稳定性和准确性。
•注意观察步进电机的转动情况,及时记录转动信息。
•实验过程中如有异常情况出现,应立即停止实验并进行排查。
5. 实验结果根据实验步骤和注意事项进行实验,步进电机的转动情况符合预期,控制效果良好。
6. 实验总结本次实验通过单片机控制步进电机的转动,加深了对步进电机原理和控制方法的理解。
实验5步进电机控制
实验五PWM配置及步进电机控制一、实验目的1. 了解步进电机驱动原理;2. 了解步进电机的控制原理;3. 熟悉使用PWM控制步进电机的运行。
二、实验主要内容1. DSP的初始化;2. ePWM模块初始化与配置;3. 步进电机的驱动程序。
三、实验基本原理1. 步进电机的驱动:图1 是单极性步进电机驱动的典型电路,图中的方块为驱动开关。
针对SEED-DEC 中直流电机系统的动作要求,步进电机驱动电路设计思路如下:1)电机采用15V直流电源供电;2)4路控制信号由DSP提供,信号为CMOS标准电平,通过排线接入并下拉;3)使用达林顿管TIP31C代替IRL549作为电机驱动开关,基级串接100欧电阻减小MOS管的寄生震荡;4)使用快速二极管IN4007完成保护功能,以免电机换向时烧毁电机;图 1 步进电机驱动电路2. 步进电机的控制一般分为四相四拍与四相八拍两种方式,其中前者称为全步,后者称为半步。
步进电机在这个实验中选择的时M35SP-7N,其步进角为7.5°,是一种单极性步进电机。
它的结构如图2:图 2 步进电机结构四、实验过程和关键程序解读1. 启动CCS,进入CCS的操作环境,并导入stepmotor工程。
2. 加载stepmotor工程,添加xml文件3. 阅读源代码1)初始化系统控制寄存器与要使用的GPIO:2)关中断、初始化PIE、初始化PIE向量表3)关ePWM时钟,配置后打开时钟,并更新中断向量表4)ePWM初始化函数(以EPwm1为例):EPWM2的其他配置与1相同,不用的在于一些事件产生的动作不同:其产生的pwm波为CMPAABCD线圈按照ACBD的次序导通步进电机接线示意图(2b-A、1b-B、1a-C、2a-D):则步进电机顺时针旋转4. 按照老师要求修改源代码1)改变步进电机的转速在使用直流电机时,通常是用占空比来调节转速的,但是在步进电机中,是通过改变PWM的频率来调整的,因为在一个PWM周期中,步进电机改变的相位是一样的,所以PWM频率越高,改变相同相位就越快,所以转速也越快,程序中我们只需改变TBPRD的值即可。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
步进电机控制实验班级:电气082姓名:姜水龙摘要:本设计基于ATS80C51单片机对步进电机进行控制,通过使用I/O口输出具有一定时序的方波作为步进电机的控制信号,控制信号通过控制全双桥芯片L298驱动步进电机,在单片机的P1口用四个LED来作为正反转,加速,减速的标志。
用独立连接式非编码键盘码键盘来对电机的状态进行控制。
关键词:步进电机单片机AT89S51 发光二极管1.引言:步进电机是一种将电脉冲信号变换成相应的角位移或直线位移的机电执行元件。
控制步进电机的输入脉冲数量、频率及电机各项绕组的接通顺序,可以得到各种需要的特性。
尤其与数字设备配套时,体现了更大的优越性,因此广泛应用于数字控制系统中。
本文介绍已实现的单片机对步进电机的数字控制系统,控制器担负着生产脉冲及发送,接受控制命令的任务。
本设计对步进电机的驱动电路,显示电路以及键盘控制电路做了详细的介绍。
2总体设计方案.2.1设计思路2.1.1:使用按钮开关控制步进电机的正反转以及加速减速因要求实现用单片机控制四相步进机的正反转以及加速减速,有很多的方法能完成这样的任务,但为了能更加方便的控制步进电机正反转以及加速减速,因此在单片机的管脚上分别接了正反转按钮,正转加速减速按钮,反转加速减速按钮以及复位按钮,当给电路通电后,就可以通过按这些按钮来实现要求的各种要求以及所要表达的信息。
2.1.2:使用L298芯片来驱动步进电机。
L298是一种高电压、大电流电机驱动芯片。
采用标准逻辑电平信号控制具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作,可以外接检测电阻,将变化量反馈给控制电路。
使用L298芯片驱动电机,该芯片可以驱动两个二相电机,也可以驱动一个四相电机,可以直接通过电源口提供信号,而且电路简单,使用比较方便。
I/O来调节输出电压,并可以直接用单片机的.设计方框图2.2 1所示总体设计方框图如图状态指示电路按键控制电路复位电路AT89S51L298驱进步电源及时钟机动电路电图1 总体设计方案框图3.设计原理分析3.1步进电机步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。
其基本原理作用如下:(1)控制换相序通电换相这一过程称为脉冲分配。
例如:三相步进电机的三拍工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。
(2)控制步进电机的转向如果给定工作方式正序换相通电,步进电机就会正向转动,如果按反序通电换相,则电机就会反向转动。
(3)控制步进电机的速度如果给步进电机发一个控制脉冲,它就转一步,再发一个,它会再转一步。
两个脉冲的间隔越短,步进电机就转的越快。
调整单片机发出的脉冲的频率,就可以对步进电机进行调速。
3.2 按键电路设计本设计采用的独立式非编码键盘控制步进电机。
共有6个按钮,其中S2为电机正转按钮、S3为电机反转按钮,S4为正转加速按钮,S5为电机正转减速按钮,S6为电机反转加速按钮,S7为电机反转减速按钮。
当按下各个按钮时,会执行各个键的功能,当按下复位按钮时,电路会恢复到初始状态。
其原理图如图2所示按键控制电路2 图3.3时钟震荡电路和复位电路设计时钟震荡电路由一个12M的晶震和两个30PF的电容组成。
复位电路有一个复位按钮,两个电阻,一个带有极性的电容做成,复位方式为手动复位。
当按下复位按钮的时间超过两个机器周期,才起到复位作用。
其原理理理如图3所示图3时钟震荡电路和复位电路3.4正反转,加速,减速标志电路设计本电路采用的是四个发光二极管来显示,分别为D1,D2,D3,D4。
当电机正转时D1发光;当电机反转时D2发光;正转加速时D1,D3发光;正转减速时D1,D4;反转加速时D2,D3发光;反转减速时D2,D4发光。
其原理图如图4所示图4正反转,加减速显示电路3.5 步进电机驱动电路设计本设计采用的是L298对步进电机进行驱动L298N为双全桥步进电机专用驱动芯片,内部包含4信道逻辑驱动电路,是一种二相?和四相步进电机的专用驱动器,可同时驱动2个二相或1个四相步进电机,内含二个H-Bridge的高电压、大电流双全桥式驱动器,接收标准?TTL以下的步进电机,且可以直接透过电源来调节输出电压,2A、46V逻辑准位信号,可驱动.图5步进电机驱动电路3.6步进电机时序表和时序图步进电机时序表和时序图分别如表1和图6表1单四拍控制表步序控制位工作状态A C DBA 1 1 1 1 0B 1 0 1 2 1C 1 1 0 1 3D 1411程序流程图4.程序开始执行调用正转指P0.0是否为0示和正转程0序1e调用反转指P0.1是否为1示和反转程序1e调用正转加0 1P0.2是否为速指示和101P0.是否加01P0.是否1是否P0.50返回开始程程序结束结束语5.本设计主要是体现了单片机在控制步进电机方面的应用。
通过这次的课程设计使我在各个方面都有了很大的提高。
首先,对步进电机的工作原理有了一定的了解,同时在设计的过程中使我感觉到整体电路的综合调试是非常重要的,仿真正确在实际电路中却有可能不能实现。
再次要考虑到单片机不能直接控制步进电机,必须根据步进电机功率的大小合理的选择功率驱动器件。
同时在含有多位数码管显示的系统中,用到的口线较多,采用串并转换的方式可以节省口线,可以节省很多的单片机资源。
还有就是编程,学习中,小程序可以很快的编出来,通过这次实习,一次系统的编程所需要考虑到的问题,是我这次实习中的一个很大的收获。
总之,通过这次实习,我学到了很多的知识,同时也找到了一些问题。
这将为我以后的学习起到很大的帮助。
感谢我的室友们,有你们在行动和思想上的支持和鼓励,才使得我这次毕业设计能顺利完成。
感谢此次指导我完成这篇论文的老师,正因为有你们的指导和修改才有我这篇论文的完成。
感谢我的母校河南科技学院,尤其是机电专业所有的老师们,在这片净土读书三载,无形中塑造了我生命的气质、生活的方式,也练就了我乐观的心态和一颗感恩的心,没有你们悉心的指导和讲解,我不可能完成此次设计参考文献[1] 肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版社,2002.8[2]何立民. 单片机高级教程.第1版.北京:北京航空航天大学出版社,2001[3] 赵晓安. MCS-51单片机原理及应用. 天津:天津大学出版社,2001.3[4] 李广第.单片机基础.第1版.北京:北京航空航天大学出版社,1999[5] 徐惠民、安德宁.单片微型计算机原理接口与应用.第1版.北京:北京邮电大学出版社,1996[6] 何立民.从Cygnal 80C51F看8位单片机发展之路.单片机与嵌入式系统应用,2002年,第5期:P5~8[7]夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 2001[8]陈志强胡辉. 单片机应用系统设计实践指南. 自编教材[9] 肖洪兵. 单片机应用技术. 自编教材[10] 肖洪兵高茂科. CAI课件自主开发[11] 李朝青单片机原理及接口技术(第三版)北京:北京航空航天大学出版社2005附录1附录2START1: MOV P2,#0FFH 。
程序开始执行JNB P0.0,Z10 JNB P0.1,F10JNB P0.2,ZA10JNB P0.3,ZS10JNB P0.4,FA10JNB P0.5,FS10AJMP START1LJMP ZZZ10:F10: LJMP FZLJMP ZA ZA10:LJMP ZS ZS10:LJMP FA FA10:LJMP FSFS10:LCALL DELAY ZZ: 。
防止按键抖动延迟JNB P0.0,$LCALL DELAYZX: MOV P1,#0EFH 。
正转显示指示MOV R0,#00HMOV A,R0 。
正转程序调用ZZ1:MOV DPTR,#TABLEMOVC A,@A+DPTRJZ ZXMOV P2,AJNB P0.1,F10JNB P0.2,ZA10JNB P0.3,ZS10JNB P0.5,FS10LCALL DELAY1INC R0LJMP ZZ1RET。
按键去抖动FZ: LCALL DELAYJNB P0.1,$LCALL DELAYFX: MOV P1,#0DFH 。
反转指示显示MOV R0,#05H。
反转程序调用FZ1: MOV A,R0MOV DPTR,#TABLEMOVC A,@A+DPTRJZ FXMOV P2,AJNB P0.0,Z10JNB P0.2,ZA10JNB P0.3,ZS10JNB P0.4,FA10JNB P0.5,FS10LCALL DELAY1INC R0LJMP FZ1RETLCALL DELAY 。
按键去抖动ZA:JNB P0.2,$LCALL DELAYZAX: MOV P1,#0AFH 。
正转加速指示显示MOV R0,#00HZA1: MOV A,R0 。
正转程序调用MOV DPTR,#TABLEMOVC A,@A+DPTRJZ ZAXMOV P2,AJNB P0.0,ZZJNB P0.1,FZJNB P0.3,ZSJNB P0.5,FS20LCALL DELAY2INC R0LJMP ZA1RETZS: LCALL DELAY 。
按键去抖动JNB P0.3,$LCALL DELAY。
正转减速指示显示ZSX: MOV P1,#6FHMOV R0,#00HZS1: MOV A,R0 。
正转减速程序调用MOV DPTR,#TABLE MOVC A,@A+DPTRJZ ZSXMOV P2,AJNB P0.0,Z20JNB P0.1,F20JNB P0.2,ZA20JNB P0.4,FA20JNB P0.5,FS20LCALL DELAY3INC R0LJMP ZS1RETZ20:LJMP ZZF20:LJMP FZZA20:LJMP ZAZS20:LJMP ZSFA20:LJMP FAFS20:LJMP FSFA: LCALL DELAY 。
按键去抖动JNB P0.4,$LCALL DELAYFAX: MOV P1,#09FH 。
反转加速指示显示MOV R0,#05HFA1: MOV A,R0 。