当前位置:文档之家› 单片机步进电机控制实训报告

单片机步进电机控制实训报告

单片机步进电机控制实训报告
单片机步进电机控制实训报告

单片机课程设计——步进电动机系统实训报告

李会民

电子工程系应用电子高职(3)08-1班

二00九年十二月

步进电机控制实训报告

一、实验要求

利用P0输出脉冲序列,74LS244输入开关量,开关K2-K8控制步进电机转换(分6挡).K0,K1控制步进电机转向.必须要K2-K8中一开关和K0,K1中一开关同时为‵1′时步进电机才启动,其他情况步进电机不工作.

步进电机驱动原理是通过对它每线圈中的电流的顺序切换来使电机作步进式旋转.驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速.微电脑控制电机步进电机最合适.

二、实验目的

(a)了解步进电机控制的基本原理

(b)掌握控制步进电机转动编程方法

三、单片机控制原理及电路连线

单片机是用来为步进电机进行控制的,给电机提供时序脉冲,让电机以某一种方式进行运转。硬件部分设计

AT89C51 外围电路设计包含有三部分的设计:键盘模块,晶振模块及复位模块。

通过按键的输入,单片机作为控制的中心决定步进电机的正转,反转,启动及停止等操作。同时通过单片机实现电子时钟控制步进电机。

键盘设计。考虑有两种方式:需要上拉电阻的方式和不需要上拉电阻的方式。由于单片内部设有小的上拉电阻,当外围电路很小时,是可以不考虑前一种方式的。我们的键盘只是起到输入时序的作用,并没有外带大的电路,所以我们选择第二种方式:

当K_1按下时:步进电机处于启动状态;

当K_2按下时:步进电机处于停止状态;

当K_3按下时:步进电机处于正向状态;

当K_4按下时:步进电机处于反向状态;

基于AT89C51的步进电机驱动器控制系统电路原理可以表示为如下图:

在AT89C51外围设有键盘模块,对单片机输入时序脉冲,不仅让单片机正常工作,而且使之输出可以使电机工作的时序脉冲。这便实现了单片机对步进电机驱动系统的控制。控制信号的来源是按键的按与松,按键输入的时序经AT89C51 处理后输出给电机驱动电路。

四、实验说明

(a)本实验使用的步进电机用直流+12V电压,电机线圈由A,B,C,D四相组成.

(b)驱动方式为四相四拍方式,各线圈通电顺序如下表.按表中顺序切换,电机按顺时针方向旋转,若通点顺序相反,则电机轴按逆时针方向旋转.

(

本次设计使用的软件有电路绘制软件Proteus 和C 语言的转换软件Keil 。我们最终完成的硬件设计要通过Proteus 将之绘制成电路图。Proteus 软件的使用方法,我们通过在网上找相关的资料,可以很容易的学习。Keil 这个软件,我们只是粗略的了解大概,将我们所写的C 语言程序转换成我所需要的HEX格式的文件,即可。

设计软件部分

PI EQU 8200H ;开关输入口地址

PO EQU 8300H ;输出口地址

ORG 0000H

SJMP START

ORG 0040H

START:

MOV SP,#60H

CLR C

PUSH PSW

MOV R5,#10010010B ;R5与C一起组成状态存储器

READ:

MOV DPTR,#PI

MOVX A,@DPTR ;读开关状态

JB ACC.0,DIRECT0 ;判断转动方向

JB ACC.1,DIRECT1 ;

SJMP READ ;正反向开关均未开则重读开关

DIRECT0: MOV R7,#00H ;设置方向标志

SJMP SPEED

DIRECT1: MOV R7,#0FFH ;设置方向标志

SPEED:

JB ACC.2,SPEED0 ;判定转速开关

JB ACC.3,SPEED1

JB ACC.4,SPEED2

JB ACC.5,SPEED3

JB ACC.6,SPEED4

JB ACC.7,SPEED5

AJMP READ ;无任何速度开,则重读开关SPEED0: MOV R6,#61H ;设置转速0常数

AJMP W A VE

SPEED1: MOV R6,#51H ;设置转速1常数

AJMP W A VE

SPEED2: MOV R6,#31H ;设置转速2常数

AJMP W A VE

SPEED3: MOV R6,#21H ;设置转速3常数

AJMP W A VE

SPEED4: MOV R6,#11H ;设置转速4常数

AJMP W A VE

SPEED5: MOV R6,#09H ;设置转速5常数

MOV B,R6

WA VE:

LCALL DELAY ;延时,决定转速

DJNZ R6,W A VE

MOV DPTR,#PO ;置输出口地址

MOV A,R5

CJNE R7,#00H,NEG ;判断转向标志

POP PSW

RLC A ;改变相位

SJMP SSS

NEG: POP PSW

RRC A ;改变相位

SSS:

PUSH PSW

MOV R5,A ;保存相位

ANL A,#07H

MOVX @DPTR,A ;相位输出

AJMP READ

DELAY: ;延时子程序

MOV R0,#40H

delay1: mov r1,#04fh

djnz r1,$

DJNZ R0,delay1

RET

END

五、实验框图

六、步进电机资料

步进电动机是纯粹的数字控制电动机,它将电脉冲信号转变成角位移,即给一个脉冲,步进电机就转一个角度,因此非常适合单片机控制。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,电机则转过一个步距角,同时步进电机只有周期性的误差而无累积误差,精度高。

步进电动机有如下特点:

①步进电动机的角位移与输入脉冲数严格成正比。因此,当它转一圈后,没有累计误差,具有良好的跟随性。

②由步进电动机与驱动电路组成的开环数控系统,既简单、廉价,叉非常可靠。同时,它也可以与角度反馈环节组成高性能的闭环数控系统。

③步进电动机的动态响应快,易于启停、正反转及变速。

④速度可在相当宽的范围内平稳调整,低速下仍能获得较大转矩,因此一般可以不用减速器而直接驱动负载。

⑤步进电机只能通过脉冲电源供电才能运行,不能直接使用交流电源和直流电源。

⑥步进电机存在振荡和失步现象,必须对控制系统和机械负载采取相应措施。

步进电机在低频工作时.会有振动大、噪声大的缺点。如果使用细分方式,就能很好的解决这个问题。步进电机的细分控制,从本质上讲是通过对步进电机励磁绕组中电流的控制,使步进电机内部的合成磁场为均匀的圆形旋转磁场,从而实现步进电机步距角的细分。一般情况下,合成磁场矢量的幅值决定了步进电机旋转力矩的大小,相邻两合成磁场矢量之间的夹角大小决定了步距角的大小。步进电机半步工作方式就蕴涵了细分的工作原理。

七、实训总结心得

通过单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新,是要我们学会将理论很好地联系实际,并不断地去开动自己的大脑,从为人类造福的意愿出发,做自己力所能及的,别人却没想到的事。使之不断地战胜别人,超越前人。同时,更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

这个设计过程中,我遇到过许多次失败的考验,就比如,自己对实际生活中的交通秩序的不了解给整个设计带来的困扰,真想要就此罢休,然而,就在想要放弃的那一刻,我明白了,原来结果并不那么重要,我们更应该注重的是这一整个过程。于是,我坚持了下来。当然最终,这个设计很成功,主要体现在,这一整个系统,几乎没有参考任何书,程序由自己独立完成,与用AT89C51来制作的交通灯控制系统相比,程序简单易读,结构清楚,最重要的是成本低。在设计一个系统,除了达到所要求的性能指标以外,成本也是很重要的一个指标。成本的高低也决定了产品的适用性。

(应用电子高职(3)08-1班李会民 )

单片机控制步进电机和数码管显示

一、设计任务书 设计内容:用80C51单片机设计一个步进电机控制器 设计要求: 1.用8015设计一个四相步进电机。 2.可控制步进电机的启动与停止,正转与反转。 3.10档速度调节。 4.点动控制。 5.可显示电机运行参数。 二、设计总体方案 (一)控制方式的选择 控制主要用于电机速度和方向的转换。控制方式有按键控制和开关控制两种。按键较开关而言,操作更加简便,故选按键控制。 方案一:独立按键。独立按键可自由连接,线路简单。 方案二:编码式键盘。编码式键盘的按键接触点接于74LS148芯片。当键盘上没有闭合时,所有按键都断开,当某一键闭合时,该键对应的编码由74LS148输出。 本次设计所需按键不多,不需要采用复杂编码,考虑硬件条件、线路连接和经济性等方面,选择方案一。 (二)电机电路设计方案的选择 由于条件的限制,对于电机的选择只能是实验台上最小步距角18°的电机,其中已包含了驱动电路。 (三)单片机的选择 方案一:AT89C51高性能8位单片机,内部集成CPU、存储器、寄存器、I/O接口,从而构成较为完整的计算机,价格便宜。 方案二:C8051F005单片机,该单片机是完全集成的混合信号系统及芯片,具有8051兼容的微控制器内核,与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件,片内还继承了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件,执行速度快,但价格较贵。 本次课程设计是在仿真环境下进行,没有太过考虑单片机选择的问题,但就设计本身来讲,从物美价廉的角度考虑,选择方案一较合适。 (四)显示方案的选择 方案一:采用LED数码管。LED数码管是轮流现实的,其利用人烟的视觉暂留特性,使人感觉不到数码管闪动,看到每只数码管都常亮。利用其显示必须不停给数码管数据输入口循环赋值,显示内容较多,编程和接线较为复杂。 方案二:采用LCD1602液晶显示器。LCD1602具有功率小,效果明显,变成容易等优点,且它最多能显示2×16个字符,可以轻松满足设计要求。 由上可知,LCD1602液晶显示器的优点突出,故选择方案二。 (五)软件部分的选择 软件部分的选择主要是指编程语言的选择,编译调试工具根据设计平台选择伟福软件。编程语言主要有以下两种方案。

步进电机的控制实验报告

步进电机的控制实验报告 一、实验目的 1.学习步进电机的工作原理。 2.了解步进电机的驱动电路。 3.学会用单片机控制步进电机。 二、实验器件 1.T IVA 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/B 3.半步八拍驱动时序 正转:A/ A/B B AB A AB/ B/ A/B/ 反转:A/B/ B/ AB/ A AB B A/B A/

DRV8833驱动芯片: DRV8833为玩具、打印机及其他机电一体化应用提供了一款双通道桥式电机驱动器解决方案。该器件具有两个H 桥驱动器,并能够驱动两个直流(DC)电刷电机、一个双极性步进电机、螺线管或其他电感性负载。每个H桥的输出驱动器模块由N沟道功率MOSFET组成,这些MOSFET被配置成一个H桥,以驱动电机绕组。每个H桥都包括用于调节或限制绕组电流的电路。借助正确的PCB设计,DRV8833的每个H桥能够连续提供高达1.5-ARMS(或DC)的驱动电流(在25℃和采用一个5VVM电源时)。每个H桥可支持高达2A的峰值电流。在较低的VM电压条件下,电流供应能力略有下降。该器件提供了利用一个故障输出引脚实现的内部关断功能,用于:过流保护、短路保护、欠压闭锁和过热。另外,还提供了一种低功耗睡眠模式。 DRV8833内置于16引脚HTSSOP封装或采用PowerPAD?的QFN封装(绿色环保:RoHS和无Sb/Br)。 图1 H桥电路真值表 设计思路:使用单相四拍通电驱动时序驱动步进电机。用单片机生成四个占空比为25%相位逐个延迟90度的PWM信号,按照特定顺序输入到驱动芯片的AIN1、AIN2、BIN1、BIN2引脚。通过调节LCD模块上的滚轮来调节PWM信号的周期从而控制步进电机的转速。调节的频率范围是25HZ-50HZ。步进电机的转速信息通过传感器采样送到单片机,信息处理后送到LCD显示模块显示。 实验主程序: int main(void) { uint32_t pui32ADC0Value[1]; // 保存ADC采样值 int speed = 0; uint32_t cur_Period, old_Period = 0; // 根据滚轮ADC转换值换算出当前的时间周期值 // 系统时钟设置 SysCtlClockSet(SYSCTL_SYSDIV_64 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ); // 初始化滚轮 Init_ADCWheel();

基于51系列单片机控制步进电机调速实验 (自动保存的)

基于51系列单片机控制步进电机调速实验 实验指导书 仇国庆编写 重庆邮电大学自动化学院 自动化专业实验中心 2009年2月

基于51系列单片机控制步进电机调速实验 实验目的及要求: 1、熟悉步进电机的工作原理 2、熟悉51系列单片机的工作原理及调试方法 3、设计基于51系列单片机控制的步进电机调速原理图(要求实现电机的速度反馈测量,测量方式:数字测量) 4、实现51系列单片机对步进电机的速度控制(步进电机由实验中心提供,具体型号42BYG )由按钮控制步进电机的启动与停止;实现加速、匀速、和减速控制。速度设定由键盘设定,步进电机的反馈速度由LED 数码管显示。 实验原理: 步进电机控制原理 一般电动机都是连续旋转,而步进电动却是一步一步转动的,故叫步进电动机。步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称VR)、永磁式步进电机(简称PM)和混合式步进电机(简称HB)。因此步进电动机是一种把脉冲变为角度位移(或直线位移)的执行元件。步进电动机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,步进电动机的转子就前进一步。由于输入的是脉冲信号,输出的角位移是断续的,所 以又称为脉冲电动机。随着数字控制系统的发展,步进电动机的应用将 逐渐扩大。 步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来 进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由 脉冲信号频率决定。步进电机的驱动电路根据控制信号工作,控制信号 可以由单片机产生。 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几 何轴线依次分别与转子齿轴线错开。0、1/3て、2/3て,(相邻 两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐, B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图:(图2所示)

用单片机控制步进电机

用单片机控制步进电机 步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 一、步进电机常识 常见的步进电机分三种:永磁式(PM),反应式(VR)和混合式(HB),永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家80年代已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为 0.72度。这种步进电机的应用最为广泛。 二、永磁式步进电机的控制 下面以电子爱好者业余制作中常用的永磁式步进电机为例,来介绍如何用单片机控制步进电机。 图1是35BY型永磁步进电机的外形图,图2是该电机的接线图,从图中可以看出,电机共有四组线圈,四组线圈的一个端点连在一起引出,这样一共有5根引出线。要使用步进电机转动,只要轮流给各引出端通电即可。将COM端标识为C,只要AC、 C、BC、 C,轮流加电就能驱动步进电机运转,加电的方式可以有多种,如果将COM端接正电源,那么只要用开关元件(如三极管),将A、、B、轮流接地。 下表列出了该电机的一些典型参数: 表1 35BY48S03型步机电机参数 型号步距角相数电压电流电阻最大静转距定位转距转动惯量 35BY48S03 7.5 4 12 0.26 47 180 65 2.5 有了这些参数,不难设计出控制电路,因其工作电压为12V,最大电流为0.26A,因此用一块开路输出达林顿驱动器(ULN2003)来作为驱动,通过P1.4~P1.7来控制各线圈的接通与切断,电路如图3所示。开机时,P1.4~P1.7均为高电平,依次将P1.4~P1.7切换为低电平即可驱动步进电机运行,注意在切换之前将前一个输出引脚变为高电平。如果要改变电机的

基于单片机的步进电机控制系统

编号: 综合智能电子 实训 (论文)说明书题目: 院(系):使用科技学院 专业:电子信息工程 学生姓名: 学号: 指导教师: 2010年 1 月 6 日

目录 引言 第1章简介 1.1 步进电机 第2章步进电机原理 2.1 步进电机的工作原理 2.1.1结构及基本原理 2.1.2 电机的步进顺序 第3章系统的硬件设计 3.1 系统设计方案 3.2 主从机硬件部件介绍 3.2.1A T89S51简介 3.2.2 TGI2864E简介 3.2.3MAX485 串行通信 3.2.4TIP122 3.2.5 MOC70T2 3.3 LCD显示电路设计 3.4 电机驱动模块设计 第4章系统的软件实现 4.1 系统软件主流程图 4.2 系统初始化流程图 4.3 部分子程序 第五章总结 致谢 参考文献 摘要:本文使用单片机、步进电机驱动芯片、字符型LCD和键盘阵列,构建了集步进电机控制器和驱动器为一体的步进电机控制系统。二维工作台作为被控对象通过步进电机驱动滚珠丝杆在X/Y轴方向联动。文中讨论了一种以最少参数确定一条圆弧轨迹的插补方法和步进电机变频调速的方法。步进电机控制系统的开发采用了软硬件协同仿真的方法,可以有效地减少系统开发的周期和成本。最后给出了步进电机控制系统的使用实例。

关键词:步进电机控制系统,插补算法,变频调速,软硬件协同仿真 In this paper, microcontroller, stepper motor driver chips, character LCD and keypad array, build a set of stepper motor controller and driver as one of the stepping motor control system. Two-dimensional table as a charged object by stepper motor drive ball screw in X / Y axis linkage. This paper discusses a minimum of parameters to determine the trajectory of a circular interpolation method and the method of frequency control stepper motor. Stepper motor control system has been developed using the software and hardware co-simulation method, can effectively reduce the system development cycle and cost. Finally, the stepper motor control system application examples.

51单片机驱动步进电机的方法(详解)

51单片机驱动步进电机的方法2019.02 这款步进电机的驱动电压12V,步进角为7.5度. 一圈360 度, 需要48 个脉冲完成!!! 该步进电机有6根引线,排列次序如下:1:红色、2:红色、3:橙色、4:棕色、5:黄色、6:黑色。 采用51驱动ULN2003的方法进行驱动。 ULN2003的驱动直接用单片机系统的5V电压,可能力矩不是很大,大家可自行加大驱动电压到12V。 ;****************************************************************************** ;*************************步进电机的驱动*************************************** ; DESIGN BY BENLADN911 FOSC = 12MHz 2005.05.19

;--------------------------------------------------------------------------------- ; 步进电机的驱动信号必须为脉冲信号!!! 转动的速度和脉冲的频率成正比!!! ; 本步进电机步进角为7.5度. 一圈360 度, 需要48 个脉冲完成!!! ;--------------------------------------------------------------------------------- ; A组线圈对应P2.4 ; B组线圈对应P2.5 ; C组线圈对应P2.6 ; D组线圈对应P2.7 ; 正转次序: AB组--BC组--CD组--DA组(即一个脉冲,正转7.5 度) ;---------------------------------------------------------------------------------- ;----------------------------正转-------------------------- ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV R3,#144 正转3 圈共144 脉冲 START: MOV R0,#00H START1: MOV P2,#00H MOV A,R0 MOV DPTR,#TABLE MOVC A,@A+DPTR JZ START 对A 的判断,当A = 0 时则转到START MOV P2,A LCALL DELAY INC R0 DJNZ R3,START1 MOV P2,#00H LCALL DELAY1 ;-----------------------------反转------------------------ MOV R3,#144 反转一圈共144 个脉冲 START2: MOV P2,#00H

步进电机实训报告

系统硬件设计 2010/2011学年第1学期专用周实训报告 课程名称:可编程控制器专用周 班级:计算机控制0901 姓名:齐珊 教学周数: 1 周 指导教师:吴洋、吴刚

目录 一、课题题目及要求 设计并制作一个基于32×32点阵LED模块的书写显示屏,其系统结构如图1-1所示。在控制器的管理下,LED点阵模块显示屏工作在人眼不易觉察的扫描微亮和人眼可见的显示点亮模式下;当光笔触及LED点阵模块表面时,先由光笔检测触及位置处LED点的扫描微亮以获取其行列坐标,再依据功能需求决定该坐标处的LED是否点亮至人眼可见的显示状态,从而在屏上实现“点亮、划亮、反显、整屏擦除、笔画擦除、连写多字、对象拖移”等书写显示功能。 图1-1 LED点阵书写显示屏系统结构示意图 设计的最终要求是:在点亮功能下当光笔接触屏上某点LED时,能即时点亮该LED;在划亮功能下当光笔快速划过时,能同步点亮划过的各LED,其速度要求2S内能划过并点亮40点LED;在反显功能下能对屏上显示的信息实现反向显示;在屏幕擦除功能下能实现对屏上所显示信息整屏擦除;在笔画擦除功能下,能用光笔擦除屏上所显汉字的笔画;在连写多字功能下,能结合自选的擦除方式,在30S内以划亮方式写出四个汉字且存入机内;在对象拖移功能下,能用光笔将选定显示内容在屏上进行拖移,先用光笔以划亮方式在屏上圈定欲拖移显示对象,再用光笔将该对象拖移到屏上另一位置;当光强改变时,能自动连续调节屏上显示亮度;当光笔连续未接触屏面的时间超过1-5MIN 时,自动关闭屏上显示,并使系统进入休眠模式。

二、实训目的 1、运用Proteus中电子线路设计与仿真(了解电路分析、模拟电子技术和数字电 子技术) 2、熟练掌握电子线路设计与仿真的一般流程 3、进一步熟练Proteus电路仿真工具和Keil仿真软件进行系统联调 4、能够学会使用可编程控制器等其它应用系统的编程方法 5、熟练在Keil软件中熟练输入、设置、调试、排除错误、修改及调试程序的方法 6、对给定题目能进行系统设计,能画出硬件原理图及软件流程图 7、掌握识别元器件类型、引脚的极性、实物引脚排列方向 8、掌握焊接元器件的方法,学会规划、合理布局焊接路电路板方法 9、能进行电路板的焊接,并能检查存在的问题 10、掌握简单产品的开发流程和详细的设计过程。 11、提高和培养创新能力和团队协作能力 12、进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力, 为后续课程的学习打下基础 三、设计过程 1、系统整体设计 根据课题要求,LED点阵书写显示屏由主控模块,按键电路、LED点阵模块、光笔电路及LED点阵驱动显示等部分组成。系统框图如图2-1所示: 图2-1系统框图 2、核心控制模块的的设计 核心控制模块是系统的大脑,控制着系统的所有输入输出、计算、判断与决策。“LED点阵书写显示屏”检测精度要求高且数据存储容量大,选择适合的控制模块,能确保其快速是实现稳定及达到

完整的单片机控制步进电机程序

#include "reg52.h" #include "INTRINS.H" #include #include #define uint unsigned int #define uchar unsigned char void check_addr(void); /*地址核对*/ uchar code slave_addr[4]={00, 01, 02, 255}; /*从机地址*/ uchar idata T0low, T0high,common_count,input_order,cmd_in_permit,interval; uchar sent_ok,speed_change,start_up,start_end,address_true,i; uint y1; uint code add[100]={60006,62771,63693,64154,64430,64614,64746,64845,64922,64983,65033,65075,651 11,65141,65167,65190,65211,65229,65245,65260,65273,65285,65296,65306,65315,65323,65331 ,65339,65345,65352,65358,65363,65368,65373,65378,65382,65387,65390,65394,65398,65401,6 5404,65407,65410,65413,65416,65418,65421,65423,65425,65428,65430,65432,65434,65435,654 37,65439,65441,65442,65444,65445,65447,65448,65450,65451,65452,65453,65455,65456,65457 ,65458,65459,65460,65461,65462,65463,65464,65465,65466,65467,65468,65469,65469,65470,6 5471,65472,65472,65473,65474,65475,65475,65476,65477,65477,65478,65478,65479,65480,654 80,65481}; sbit P2_0=P2^0; /*作输入步进电机的脉冲信号发送口*/ sbit P2_2=P2^2; /*作输入步进电机的旋转方向信号发送口*/ sbit P1_0=P1^0; /*作串口输出信号的使能口, P1_0=0时接通串口,输出信号*/ sbit WD=P1^7; /*看门狗*/ main() { P2_0=0; P2_2=0; /*步进电机的旋转方向待试验后确定*/ P1_0=1; /*开机时需要关断,串口发送功能,需要时再接通*/ WD=1; /*看门狗先为1,电平翻转为喂狗*/ i=0; common_count=0; cmd_in_permit=0; input_order=0; interval=0; address_true=1; speed_change=0; start_up=0;

基于单片机的步进电机驱动控制

基于单片机的步进电机驱动控制 一、步进电机概述 1.步进电机的定义 步进电机指的是以数字脉冲信号作为电机线或教位移的控制信号,并以数字脉冲频率对电机的转速进行控制的动力控制系统。 在负载正常范围的情况下,步进电机的运行状态只和数字脉冲发生器提供的信号的频率和脉冲占空比有关,一般情况下,电机的状态不受负载的影响。电机的运行角度只和每次所给予的脉冲信号强度有关,而电机的运行速度也只和脉冲信号的频率有直接关 系。这种采用弱点控制强电的控制方式使得步进电机在速度、位移等控制领域有着普通电机不能比拟的优势。 2.驱动控制系统框图 步进电机控制系统有着精确控制、运行稳定的特性,这一其他电机不能比拟的优势使得步进电机得到了广泛的应用。而一般对步进电机控制系统的驱动必须要包含脉冲信 号发生部分,功放部分和驱动控制部分等几个模块电路,我们根据这些通过的模块电路,可将步进电机控制系统的通用框图绘制如下: 在上图的步进电机驱动控制系统方框图中,控制步进电机运行状态的脉冲信号一 般由集成芯片产生,可以是单片机、等智能芯片,也可以是一般的数字电路集成芯片。信号分配环节则要根据步进电机的型号来选择,如四相步进电机有四相四拍和四相 八拍种信号分配的方式;两相步进电机有两相四拍和八拍等脉冲加载形式。功放部分 在驱动环节上显得尤为重要。动态平均电流是步进电机转矩大小的决定因素,前提条件 是电机的速度。电机力矩与平均电流成正比,驱动系统对电机的反电势消弱越多,则平 均电流就越大。 我们一般可以用恒压和恒压串电阻的方法来驱动,或者在条件允许的情况下我们可以用高低压驱动、恒流和细分数等方法来驱动实际的应用过程种,多采用数字集成驱 动芯片作为步进电机的驱动手段。 二、现阶段国内外步进电机驱动的常用方式 1.变频器控制方式 使用变频器对步进电机进行驱动控制时,可以很好的解决步进电机在启动和停止时 容易失步的问题,提高了系统的控制精度。但是变频器的应用成本较高,结构和操作也 比较复杂,无形中提高步进电机的控制难度。 2.PLC控制方式 使用ABB、西门子、欧姆龙等国际知名生产制造商研发的系列产品可以 实现对步进电机的理想化控制,但是基于核心的步进电机控制系统成本高昂,且 难以实现精确控制,在本系统中不太适合。 3.单片机控制方式 随着嵌入式系统在工业控制领域中的广泛应用,以单片机特别是系列单片机 作为控制核心的步进电机控制电路在生产生活领域得到了普及,单片机有着大规模数字

步进电机实验报告剖析

北华航天工业学院 课程设计报告(论文) 课程名称:微机控制技术课程设计 设计课题:步进电机的控制系统 专业班级: 学生姓名: 指导教师: 设计时间:2013年06月11日

北华航天工业学院电子工程系 微机控制技术课程设计任务书 姓名:专业:班级: 指导教师:职称:教授时间:2013.6.11 课程设计题目:步进电机的控制系统 设计步进电机单片机控制系统,其功能如下: 1.具有对步进电机的启停、正反转、加减速控制; 2.控制按钮分别为正转、反转、加速、减速、以及停止键; 3.能够通过三位LED数码管(或液晶显示器)显示当前的转动速度,并且由两只不同颜色的发光二极管分别指示正转和反转,因此可以清楚的显示当前转动方向和转速; 4.要求每组选择的步进电机控制字不同; 5.用单片机做控制微机; 应用软件:keil protues 成果验收形式: 1.课程设计的仿真结果 2.课程设计的报告书 参考文献: 【1】张家生. 电机原理与拖动基础【M】. 北京:北京邮电大学出版社,2006. 【2】马淑华,王凤文,张美金. 单片机原理与接口技术【M】.北京:北京邮电大学出版社,2007. 【3】顾德英,张健,马淑华.计算机控制技术【M】. 北京:北京邮电大学出版社,2006. 【4】张靖武,周灵彬. 单片机系统的PROTEUS设计与仿真【M】. 北京:电子工业出版社,2007 第16周 时间 安排 指导教师教研室主任: 2013年06 月11日

内容摘要 步进电机是一种进行精确步进运动的机电执行元件,它广泛应用于工业机械的数字控制,为使系统的可靠性、通用性、可维护性以及性价比最优,根据控制系统功能要求及步进电机应用环境,确定了设计系统硬件和软件的功能划分,从而实现了基于8051单片机的四相步进电机的开环控制系统。控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。为实现单片机控制步进电机系统在数控机床上的应用,系统设计了两个外部中断,以实现步进电机在某段时间内的反复正反转功能,也即数控机床的刀架自动进给运动,随着单片机技术的不断发展,单片机在日用电子产品中的应用越来越广泛,自六十年代初期以来,步进电机的应用得到很大的提高。 关键词:步进电机单片机数码管显示

51单片机控制四相步进电机解析

51单片机控制四相步进电机 2009年07月21日星期二 12:44 51单片机控制四相步进电机 2009-03-01 18:53 接触单片机快两年了,不过只是非常业余的兴趣,实践却不多,到现在还算是个初学者吧。这几天给自己的任务就是搞定步进电机的单片机控制。以前曾看过有关步进电机原理和控制的资料,毕竟自己没有做过,对其具体原理还不是很清楚。今天从淘宝网买了一个EPSON的UMX-1型步进电机,此步进电机为双极性四相,接线共有六根,外形如下 图所示: 详细内容: https://www.doczj.com/doc/4213076603.html,/31907887_d.h tml

拿到步进电机,根据以前看书对四相步进电机的了解,我对它进行了初步的测试,就是将5伏电源的正端接上最边上两根褐色的线,然后用5伏电源的地线分别和另外四根线(红、兰、白、橙)依次接触,发现每接触一下,步进电机便转动一个角度,来回五次,电机刚好转一圈,说明此步进电机的步进角度为360/(4×5)=18度。地线与四线接触的顺序相反,电机的转向也相反。 如果用单片机来控制此步进电机,则只需分别依次给四线一定时间的脉冲电流,电机便可连续转动起来。通过改变脉冲电流的时间间隔,就可以实现对转速的控制;通过改变给四

线脉冲电流的顺序,则可实现对转向的控制。所以,设计了如下电路图: C51程序代码为: 代码一 #include static unsigned int count; static unsigned int endcount; void delay(); void main(void)

单片机步进电机控制实训报告.doc

单片机课程设计——步进电动机系统实训报告 李会民 电子工程系应用电子高职(3)08-1班 二00九年十二月

步进电机控制实训报告 一、实验要求 利用P0输出脉冲序列,74LS244输入开关量,开关K2-K8控制步进电机转换(分6挡).K0,K1控制步进电机转向.必须要K2-K8中一开关和K0,K1中一开关同时为‵1′时步进电机才启动,其他情况步进电机不工作. 步进电机驱动原理是通过对它每线圈中的电流的顺序切换来使电机作步进式旋转.驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速.微电脑控制电机步进电机最合适. 二、实验目的 (a)了解步进电机控制的基本原理 (b)掌握控制步进电机转动编程方法 三、单片机控制原理及电路连线 单片机是用来为步进电机进行控制的,给电机提供时序脉冲,让电机以某一种方式进行运转。硬件部分设计 AT89C51 外围电路设计包含有三部分的设计:键盘模块,晶振模块及复位模块。 通过按键的输入,单片机作为控制的中心决定步进电机的正转,反转,启动及停止等操作。同时通过单片机实现电子时钟控制步进电机。 键盘设计。考虑有两种方式:需要上拉电阻的方式和不需要上拉电阻的方式。由于单片内部设有小的上拉电阻,当外围电路很小时,是可以不考虑前一种方式的。我们的键盘只是起到输入时序的作用,并没有外带大的电路,所以我们选择第二种方式: 当K_1按下时:步进电机处于启动状态; 当K_2按下时:步进电机处于停止状态; 当K_3按下时:步进电机处于正向状态; 当K_4按下时:步进电机处于反向状态; 基于AT89C51的步进电机驱动器控制系统电路原理可以表示为如下图:

51单片机控制步进电机程序及硬件电路图

#include static unsigned int count; //计数 static int step_index; //步进索引数,值为0-7 static bit turn; //步进电机转动方向 static bit stop_flag; //步进电机停止标志 static int speedlevel; //步进电机转速参数,数值越大速度越慢,最小值为1,速度最快static int spcount; //步进电机转速参数计数 void delay(unsigned int endcount); //延时函数,延时为endcount*0.5毫秒 void gorun(); //步进电机控制步进函数 void main(void) { count = 0; step_index = 0; spcount = 0; stop_flag = 0; P1_0 = 0; P1_1 = 0; P1_2 = 0; P1_3 = 0; EA = 1; //允许CPU中断 TMOD = 0x11; //设定时器0和1为16位模式1 ET0 = 1; //定时器0中断允许 TH0 = 0xFE;

TL0 = 0x0C; //设定时每隔0.5ms中断一次TR0 = 1; //开始计数 turn = 0; speedlevel = 2; delay(10000); speedlevel = 1; do{ speedlevel = 2; delay(10000); speedlevel = 1; delay(10000); stop_flag=1; delay(10000); stop_flag=0; }while(1); } //定时器0中断处理 void timeint(void) interrupt 1 { TH0=0xFE; TL0=0x0C; //设定时每隔0.5ms中断一次count++; spcount--; if(spcount<=0) { spcount = speedlevel; gorun(); } } void delay(unsigned int endcount) { count=0; do{}while(count

基于51单片机的步进电机控制-

基于51单片机的步进电机控制 [摘要]本课程设计的内容是利用51单片机,达到控制步进电机的启动、 停止、正转、反转、两档速度和状态显示的目的,使步进电机控制更加灵活。步进电机驱动芯片采用ULN2803,ULN2803具有大电流、高电压,外电路简单等优点。利用四位数码管增设电机状态显示功能,各项数据更直观。实测结果表明,该控制系统达到了设计的要求。 关键字:步进电机、数码管、51单片机、ULN2803 一步进电机与驱动电路 1.1 什么是步进电机 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时也可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 1.2 步进电机的种类 步进电机分永磁式(PM)、反应式(VR)、和混合式(HB)三种。永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家80年代已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为0.72度。这种步进电机的应用最为广泛。 1.3 步进电机的特点 1.精度高一般的步进电机的精度为步进角的3-5%,且不累积。可在宽广的频率范围内通过改变脉冲频率来实现调速,快速起停、正反转控制及制动等,这是步进电动机最突出的优点 2.过载性好其转速不受负载大小的影响,不像普通电机,当负载加大时就会出现速度下降的情况,所以步进电机使用在对速度和位置都有严格要求的场合; 3.控制方便步进电机是以“步”为单位旋转的,数字特征比较明显,这样就给计算机控制带来了很大的方便,反过来,计算机的出现也为步进电机开辟了更为广阔的使用市场;

控制步进电机调速系统实验报告

华北科技学院计算机系综合性实验 实验报告 课程名称微机原理及应用 实验学期 2011 至 2012 学年第二学期学生所在系部电子信息工程学院 年级 2009 专业班级 学生姓名学号 任课教师 实验成绩 计算机系制

《微机原理及应用》课程综合性实验报告 开课实验室:计算机接口实验室2012年5月29日 实验题目微机控制步进电机调速系统 一、实验目的 1、了解计算机控制步进电机原理 2、掌握步进电机正转反转设置方法 3、掌握步进电机调速工作原理及程序控制原理 二、设备与环境 TPC-2003A 微机。 Vc++编译器。 三、实验内容 硬件接线图参考实验指导书。 软件编程在TPC-2003A自带的VC++编译环境下使用。 在通用VC++下编程,需要拷贝相关的库文件。 用汇编语言编写控制程序需注明原理。 四、实验结果及分析 1、实验步骤 1、按如下实验原理图连接线路,利用8255输出脉冲序列,开关K0~K6控制步进电机转速,K7控制步进电机转向。8255 CS接288H~28FH。PC0~PC3接BA~BD;PA口接逻辑电平开关。 2、编程:当K0~K6中某一开关为“1”(向上拨)时步进电机启动。K7向上拨电机正转,向下拨电机反转。 实验原理图

2.实验结果 按照实验步骤连接实验电路,检查无误后运行程序。可以看到,当开关k0到k6依次为高电平时,电机转速越来越慢,k0闭合时速度最快,k6闭合时速度最慢,当k0到k6的低位有闭合时,步进电机按最低位的转速运行,因为程序中的查询方式是从k0-k6,即在程序的优先级别中k0的级别是最高的而k7的优先级别是最低的。k7控制电机的正转与反转。 3.实验分析 (1)步进电机的工作原理: 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非常的简单。 步进电机驱动原理是通过对每相线圈中的电流的顺序切换来使电机作步进式旋转。驱动 电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。 如图(b)所示:本实验使用的步进电机用直流+5V 电压,每相电流为0.16A,电机线圈 由四相组成:即: φ1(BA) φ2(BB) Φ3(BC) Φ4(BD) 驱动方式为二相激磁方式,各线圈通电顺序如下表所示。图(b) 表中首先向φ1 线圈-φ2 线圈输入驱动电流,接着φ2-φ3,φ3-φ4,φ4-φ1,又返回到φ1-φ2,按这种顺序切换,电机轴按顺时针方向旋转。 实验可通过不同长度的延时来得到不同频率的步进电机输入脉冲,从而得到多种步进速度。

步进电机实验报告

单片机实验 课程名称:步进电机表实验 授课班级:2010级自动化三班 任课教师:文远熔 计划学时:32学时 实验组员:张藤耀赵福亮王聪慧 秦菱蔚梁钦郑欢

目录 摘要………………………………………………………………………… 第一章概述…………………………………………………………………………………………. 1.1实验目的………………………………………………………………………… 1.2实验要求………………………………………………………………………… 1.3步进电机的介绍…………………………………………………………………… 1.4 研究思路………………………………………………………………………… 第二章硬件设计………………………………………………………….. 2.1 51单片机介绍…………………………………………………………………… 2.2 UIN2003A…………………………………………………………………………… 2.3 ZLG7290…………………………………………………………………………… 2.3.1 7290工作原理………………………………………………………………… 2.3.2 7290引脚图…………………………………………………………………… 第三章相关图像………………………………………………………………. 3.1 总电路图……………………………………………………………………… 3.2 7290控制数码管……………………………………………………………………… 3.3 程序流程图………………………………………………………………………… 3.3.1 控制框图………………………………………………………………………… 3.3.2 流程图………………………………………………………………………… 第四章调试………………………………………………………………………第五章心得体会…………………………………………………………………附录【一】系统程序……………………………………………………………附录【二】参考文献…………………………………………………………….

msp430控制步进电机实验报告

计算机硬件应用课程设计

一、实验内容及要求 题目:步进电机控制设计 使用单片机为核心,设计一个步进电机控制器。 基本要求:使用单片机为控制核心,编写程序并设计硬件结构,实现对步进电机 的控制。步进电机按固定方向连续转动。对电机的运行方向进行控制,如:要求按下A 键时,能够控制步进电机正转;按下B键时,能够控制步进电机反转。 提高要求(选作):用LED数码管显示步进电机的转动状态;增加启动、停止控制按键。 二、小组成员 三、实验软硬件环境简介 硬件环境:MSP430G2553单片机一块,五线四相步进电机一个,驱动芯片ULN2003一块,开关三个,下载线一根。 软件设计:仿真软件PROTEUS 8.0 Professional;代码编写软件IAR;WINDOWS操作系统。 四、设计方案分析 步进电机是一种能够将电脉冲信号转换成角位移或线位移的机电设备,它实际上是一种单相或多相同步的步进电机。单相步进电机由单路电脉冲驱动,输出功率一般很小,故需要加一个驱动电路。当向脉冲分配器输入一个脉冲时,电动机各相的通电状态就会发生改变,转子会转过一定的角度(称为步距角)。正常情况下,步进电机转过的总角度和输入法的脉冲数成正比;连续输入一定频率的脉冲时,电动机的转速与输入脉冲的频率保持严格的对应关系,不受电压波动和负载变化的影响。 步进电机的不同驱动方式,都是在工作时,脉冲信号按一定顺序轮流加到三相绕组上,从而实现不同的工作状态。步进电机有三线式、五线式、六线式三种,但其控制方式均相同,都必须以脉冲电流来驱动。若每转一圈以20个励磁信号来计算,则每个励磁信号前进18°,其旋转角度与脉冲数成正比,正反转可以由脉冲顺序来控制。 步进电机的励磁方式可分为全部励磁及半步励磁,其中全部励磁又有1相励磁及2相励磁之分,而半步励磁又称为1-2相励磁。 1相励磁法:在每一瞬间只有一个线圈导通。消耗电力小,精确度良好,但转矩小,振动较大,每一励磁信号可走18°。若以1相励磁法控制步进电机正转,其励磁顺序表如下。若以励磁信号反响传送,则步进电机反转。本实验中采用这个方法。

单片机控制电机调速实验报告

重庆邮电大学综合实验报告——单片机控制步进电机调速 学生姓名:组长:AAAA 组员:AAAAAAAA 学号:XXXXX XXXXXXXXXXXXX 所在学院:自动化 班级:XXXXX 专业:机械设计制造及其自动化 指导老师:XXXX 成绩评定: 检测与控制实验中心

目录 一、实验要求与目的 (3) 1、设计要求 (3) 2、实验目的 (3) 二、设计思路 (3) 三、实验原理 (4) 1、步进电机 (4) 2、步进电机控制系统结构 (4) 3、速度控制算法 (5) 四、功能概述及方案设计 (5) 1、显示模块 (5) 2、AD转换模块 (6) 3、步进电机细分驱动模块 (6) 五、实验运行程序 (7) 六、实验心得 (13) 参考文献 (13)

一、实验要求与目的 1、设计要求 1、步进电机的给定速度由电位器通过AD转换输入 2、只有给定速度和实际速度显示功能 3、实际速度通过红外光电开关(或霍尔元件)检查 4、步进电机具有细分功能:1/2细分 1/4细分 1/8细分 5、测试步进电机的响应时间及曲线 2、实验目的 1、熟悉步进电机的工作原理 2、熟悉51系列单片机的工作原理及调试方法 3、设计基于51系列单片机控制的步进电机调速原理图 4、实现51系列单片机对步进电机的速度控制 5、了解霍尔元件和步进电机细分驱动芯片tb6560的使用 二、设计思路 主控芯片采用STC89C52单片机,显示采用1602液晶,由于步进电机速度设定由电位器输入,使用外部AD tlc5510,AD时钟源接89C52 ALE引脚,AD为并行,AD使用单片机P1口,可以直接读取,根据对应数据设定速度。步进电机速度控制采用闭环控制,由于传统的PID控制算法波动较大,我们采用分级设定加速度的办法,并把编码器反馈回来的速度与设定速度进行比较确定是加速还是减速,软件模拟加速减速过程,步进电机细分由驱动芯片TB6560提供,由于驱动细分由m1、m2口电平决定,我们采取直接通过拨码开关设定电平,从而设定驱动细分值。

相关主题
文本预览
相关文档 最新文档