电机方案设计书实验步进电机控制实验

合集下载

步进电机实验报告

步进电机实验报告

步进电机实验报告
实验目的:
掌握步进电机的工作原理以及驱动方式,通过实验观察步进电机的运动特性和控制方式。

实验材料:
1. 步进电机
2. 步进电机驱动器
3. 控制器(如Arduino)
4. 电源
5. 连接线
实验步骤:
1. 将步进电机与步进电机驱动器进行连接,按照正确的接线顺序进行连接。

2. 将步进电机驱动器连接到控制器。

3. 连接电源,设置合适的电压和电流。

4. 编写控制程序,实现不同的步进电机控制方式,如全步进、半步进等。

5. 运行控制程序,观察步进电机的运动情况。

实验结果:
在不同的步进电机控制方式下,步进电机的运动情况各有不同。

在全步进模式下,步进电机每次转动一个固定角度;在半步进模式下,步进电机每次转动半个固定角度。

通过控制程序可以灵活控制步进电机的运动方式和速度。

实验讨论:
步进电机是一种精密控制设备,广泛应用于机械设备中。

在实际应用中,可以根据实际需求选择合适的步进电机控制方式,并通过调整控制程序中的参数来实现精确的运动控制。

结论:
通过本次实验,我们掌握了步进电机的工作原理、驱动方式以及控制方法,进一步加深了对步进电机的理论和实践认识。

步进电机实验报告册(3篇)

步进电机实验报告册(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步进电动机控制实验一、步进电机与步进电机驱动器的接线图步进电机驱动器与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篇)

控制步进电机实验报告(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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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 。

相关文档
最新文档