导航:首页 > 操作系统 > 单片机步进电机控制

单片机步进电机控制

发布时间:2022-04-16 10:15:47

单片机怎么控制步进电机

ULN2003D 是驱动步进电机的驱动芯片,主要是匹配电机所需的电流。
由于是四相电机,步进电机之所以可以转动就需要给相绕组提供连续的脉冲,所以需要4个端口来控制四相绕组的工作状态(P15应该是不需要的),具体的编码要看电机的拍数;
一旦明白这些,你就可以很容易编写代码来控制电机的转动了,还有在脉冲间你可以设置不同的延时时间来调节电机的转速。

㈡ 单片机控制步进电机程序

假设P0口低4位接步进电机4个绕组,高电平绕组通电,程序如下:
whille(1)
{P0=1;delayms(5);
P0=2;delayms(5);
P0=4;delayms(5);
P0=8;delayms(5);}
反转 的话, 就按 8 4 2 1 顺序输出。

㈢ 单片机步进电机控制器

步进电机采用二相四拍步进电机,采用89s51 或STc 系列作为控制芯片
系统具有下列功能:A采用闭环控制B可进行位移设定,前进至终点后延时1s返回值原点停止C可进行实际位移值设定D可手动控制正反转。
步进电机控制器是一种能够发出均匀脉冲信号的电子产品,它发出的信号进入步进电机驱动器后,会由驱动器转换成步进电机所需要的强电流信号,带动步进电机运转。步进电机控制器能够准确的控制步进电机转过每一个角度。
驱动器所接收的是脉冲信号,每收到一个脉冲,制动器会给电机一个脉冲使电机转过一个固定的角度,就因为这个特点,步进电机才会被广泛的应用到现在的各个行业里。
驱动电路
在步进电机的应用中,最需要考虑的重要事项之一就是设计匹配的驱动电路。步进电机的动态性能非常地依赖驱动电路。图1显示了步进电机驱动系统的结构图。驱动步进电机需要开关电流从一个定子绕组到另一个。这种开关功能被驱动电路提供,驱动电路排列,分配和放大来自信号电路的脉冲序列。步进电机的绕组以指定的次序被激励。
集成电路的实用性已经使得对于额定电流小于3安培的小型步进电机使用分立元件构造驱动电路是不必要的。例如,SGS L7180与L7182对于单极性驱动,和L293与L298对于双极性驱动,能够很容易地使用在紧密的控制器里。
应用设置
1.设置步进驱动器的细分数,通常细分数越高,控制分辨率越高。但细分数太高则影响到最大进给速度。一般来说,对于模具机用户可考虑脉冲当量为0.001mm/P(此时最大进给速度为9600mm/min)或者0.0005mm/P(此时最大进给速度为4800mm/min);对于精度要求不高的用户,脉冲当量可设置的大一些,如0.002mm/P(此时最大进给速度为19200mm/min)或0.005mm/P(此时最大进给速度为48000mm/min)。对于两相步进电机,脉冲当量计算方法如下:脉冲当量=丝杠螺距÷细分数÷200。
2.起跳速度:该参数对应步进电机的起跳频率。所谓起跳频率是步进电机不经过加速,能够直接启动工作的最高频率。合理地选取该参数能够提高加工效率,并且能避开步进电机运动特性不好的低速段;但是如果该参数选取大了,就会造成闷车,所以一定要留有余量。在电机的出厂参数中,一般包含起跳频率参数。但是在机床装配好后,该值可能发生变化,一般要下降,特别是在做带负载运动时。所以,该设定参数最好是在参考电机出厂参数后,再实际测量决定。
3.单轴加速度:用以描述单个进给轴的加减速能力,单位是毫米/秒平方。这个指标由机床的物理特性决定,如运动部分的质量、进给电机的扭矩、阻力、切削负载等。这个值越大,在运动过程中花在加减速过程中的时间越小,效率越高。通常,对于步进电机,该值在100 ~ 500之间,对于伺服电机系统,可以设置在400 ~ 1200之间。在设置过程中,开始设置小一点,运行一段时间,重复做各种典型运动,注意观察,如果没有异常情况,然后逐步增加。如果发现异常情况,则降低该值,并留50%~100%的保险余量。
4.弯道加速度:用以描述多个进给轴联动时的加减速能力,单位是毫米/秒平方。它决定了机床在做圆弧运动时的最高速度。这个值越大,机床在做圆弧运动时的最大允许速度越大。通常,对于步进电机系统组成的机床,该值在400~1000之间,对于伺服电机系统,可以设置在1000 ~ 5000之间。如果是重型机床,该值要小一些。在设置过程中,开始设置小一点,运行一段时间,重复做各种典型联动运动,注意观察,如果没有异常情况,然后逐步增加。如果发现异常情况,则降低该值,并留50%~100%的保险余量。
通常考虑到步进电机的驱动能力、机械装配的摩擦、机械部件的承受能力,可以在厂商参数中修改各个轴的最大速度,对机床用户实际使用时的三个轴最大速度予以限制,。
5.根据三个轴零点传感器的安装位置,设置厂商参数中的回机械原点参数。当设置正确后,可运行“操作”菜单中的“回机械原点”。先单轴回,如果运动方向正确则继续回,否则需停止,重新设置设置厂商参数中的回机械原点方向,直至所有轴都可回机械原点。
6.设置自动加油参数(设置得小一些,如5秒加一次油),观察自动加油是否正确,如果正确,则将自动加油参数设置到实际需要的参数。
7.校验电子齿轮和脉冲当量的设定值是否匹配。可以在机床的任意一根轴上做个标记,在软件中把该点坐标设为工作零点,用直接输入指令、点动或手轮等工作方式使该轴走固定距离,用游标卡尺测量实际距离与软件中坐标显示距离是否相附。
8.测定有无丢脉冲。您可以用直观的方法:用一把尖刀在工件毛坯上点一个点,把该点设为工作原点,抬高Z轴,然后把Z轴坐标设为0;反复使机床运动,比如空刀跑一个典型的加工程序(最好包含三轴联动),可在加工中暂停或停止,然后回工件原点,缓慢下降Z轴,看刀尖与毛坯上的点是否吻合。如有偏差,请检查步进驱动器接收脉冲信号的类型,检查端子板与驱动器间接线是否有误。如果还出现闷车或丢步,按10、11、12步调整加速度等参数。

㈣ 如何使用单片机控制步进电机

根据电机相数买个驱动器。然后用单片机产生脉冲来控制电机的转动以及正反转。单片机产生脉冲的方法和单片机控制流水灯是一样的。希望我的回答能给你点思路。

㈤ 怎样用51单片机接两相步进电机驱动器来控制步进电机

脉冲信号就是像流水灯差不多,用两个口。

例如:

用到P1^0和P1^1;把P10制低电平,P11制高电平,延时一段时间后,P10制高电平 P11制低电平,如此循环,看程序:

#include "reg52.h"

sbit P10=P1^0;

sbit P11=P1^1;

void delay(unsigned int x)

P10=0;P11=1;

delay(1000);

P10=1;P11=0;

delay(1000);

}

}1-B1-B1A0;

两相四线程序 接P1口

#include "reg52.h"

#define uint unsigned int

#define uchar unsigned char

uchar code tab[]={0xfd,0xfb,0xf7,0xef};

uint i;

void delay(uint x)

{

uint y;

for(;x>0;x--)

{

for(y=0;y<124;y++);

void main()

while(1)

P1=tab[i];

i++;

if(i==4)

{

i=0;

}

delay(20);

(5)单片机步进电机控制扩展阅读:

同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51,PHILIPS,和WINBOND等;

常说的已经停产的89C51指的是ATMEL公司的AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

㈥ 单片机控制步进电机的原理

步进电机控制原理

步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称VR)、永磁式步进电机(简称PM)和混合式步进电机(简称HB)。

步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。

步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下:

(1)控制换相顺序

通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。

(2)控制步进电机的转向

如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。

(3)控制步进电机的速度

如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速。

步进电机是一种可以把脉冲激励的变化转换成精确转子位置增量运动的执行机构,它可将脉冲信号变成电机相应角位移的机械量,从而通过控制脉冲的个数来控制电机转动的时间,并通过改变脉冲的频率控制电机运转的速度。

㈦ 哥,步进电机驱动器怎么用单片机控制啊

步进电机驱动器一般接受的控制信号为:
1、cw+ccw,即正转脉冲加反转脉冲
2、pulse+dir,即脉冲加方向
一般驱动器都可以兼容两种方式,即通过DIP开关选择采用哪种方式。
如此,你用单片机控制起来就很方便了,用两个IO口发控制信号就OK了,哪种方式都可以,脉冲的频率大小决定电机的速度快慢。
当然,你也要注意驱动器需要信号的电压大小,如果是5V,直接IO相连就行,如果需要12V,那么需要加个光耦就行了。

㈧ 如何使用单片机精确控制步进电机

如何用单片机控制步进电机
步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
一、步进电机常识
常见的步进电机分三种:永磁式(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、轮流接地。列出了该电机的一些典型参数:表135BY48S03型步机电机参数型号步距角相数电压电流电阻最大静转距定位转距转动惯量35BY48S03 7.5 4 12 0.26 47 180 65 2.5 有了这些参数,不难设计出控制电路,因其工作电压为12V,最大电流为0.26A,因此用一块开路输出达林顿驱动器(ULN2003)来作为驱动,通过P1.4~P1.7来控制各线圈的接通与切断。开机时,P1.4~P1.7均为高电平,依次将P1.4~P1.7切换为低电平即可驱动步进电机运行,注意在切换之前将前一个输出引脚变为高电平。如果要改变电机的转动速度只要改变两次接通之间的时间,而要改变电机的转动方向,只要改变各线圈接通的顺序。

㈨ 单片机控制步进电动机的运动的原理及单片机程序

51单片步进电机控制原理与控制设计程序
51单片步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称vr)、永磁式步进电机(简称pm)和混合式步进电机(简称hb)。
51单片步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。
51单片步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下:
(1)控制换相顺序
通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为a-b-c-d,通电控制脉冲必须严格按照这一顺序分别控制a,b,c,d相的通断。
(2)控制步51单片进电机的转向
如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。
(3)控制51单片步进电机的速度
如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速。步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。

阅读全文

与单片机步进电机控制相关的资料

热点内容
假的加密锁靠谱吗 浏览:176
经营圣手服务器怎么调 浏览:749
arduino手机编程 浏览:481
西医pdf下载 浏览:29
后浪电影学院pdf 浏览:813
程序员怎么做到不被人嫉妒 浏览:669
cmd新建文件夹md命令 浏览:570
php数组中的数值排序 浏览:832
安卓手机怎么避免小孩内购 浏览:171
联想服务器出现黄色叹号怎么办 浏览:991
约翰编译器制作教程 浏览:130
大地pdf 浏览:109
pdfplus 浏览:577
汇编O命令 浏览:970
plt转pdf 浏览:364
魔兽60宏命令大全 浏览:478
php志愿者网站源码 浏览:874
贸易pdf 浏览:497
dbug命令 浏览:352
开逛app如何加好友 浏览:960