西门子PLC对步进电机的控制方法 PLC直接控制步进电机
PLC直接控制步进电机使用PLC直接控制步进电机时,可使用PLC产生控制步进电机所需要的各种时序的脉冲。
例如三相步进电机可采用三种工作方式:
三相单三拍
三相单三拍
三相双三拍
三相双三拍
三相单六拍
三相单六拍
可根据步进电机的工作方式,以及所要求的频率(步进电机的速度),画出A、 B、C各相的时序图。并使用PLC产生各种时序的脉冲。
例如:采用西门子S7-300PLC控制三相步进电机的过程。
要求通过PLC可实现三相步进电机的起停控制、正反转控制,以及三种工作方式的切换(每相通电时间为1秒钟)。
变量约定如下
输入:启动按钮SB1: I0.0
方向选择开关SA1: I0.1
停止按钮SB2: I0.2
三相单三拍方式选择SA2: I0.3
三相双三拍方式选择SA3: I0.4
三相单六拍方式选择SA4: I0.5
输出: A相加电压: Q0.0
B相加电压: Q0.1
C相加电压: 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开始,每次移两位。
三相单六拍正向时序流程图
在程序段1中,先产生周期为1秒钟的脉冲信号,如图所示:
图 程序段1
在不同的工作方式下赋予MW10不同的初值,如图程序段2~4所示
图 程序段2~4
程序段2:三相单三拍或三相单六拍工作方式,此时均从M11.0开始移位,两种工作方式均为M11.6为“1”时返回。程序段3:三相双三拍工作方式,此时从M11.1开始因为,而在M11.7时返回。程序段4:若按下停止按钮或没有选择工作方式时, MW10中的内容为“0”,则不会有输出。
在不同的工作方式下,将移位指令移动的位数保存在MW20中,程序如图所示
图 程序段5
程序段5:三相单三拍或三相双六拍,每次应移动2位。程序段6:三相单六拍,每次应移动一位。程序段7为移位指令,由于T1的周期为1秒钟,因此每间隔1秒钟,移位指令左移指定的位数。再将MW10中对应的位控制相应的输出,可实现步进电机的控制。步进电机的反向控制可根据相同的办法来实现。
PLC步进电机——回原点程序#PLC编程
PLC步进电机回原点程序--绝对回原点(模式0)。
我们来讲一下绝对位置的控制。所谓的绝对位置就是不受当前电机位置的影响,整个运动轴上每一个点都有具体的坐标。给到指定的坐标之后电机就会开始运动,把小的四幅块运动过去。
想要完成绝对运动首先需要定义一个圆点,在程序里面还是之前motion control里,这里有一个home,有一个mc home拖出来就是回原点程序。上面有一些银角,我这边还是添加一下,其实比之前的指定要更加简单一些,只要选定轴,有一个触发,触发选的是按钮,回原点按钮,完成错误。
同样的也是,只是我们来看的,不要对后边的这两个银角的数据进行操作,这两个只是用来观看的,可以拿来当做程序里的条件,或者拿一个指示灯去看它,但是不要操作变量本身。
点一下mc后面指令,就这样变成蓝色的状态,r1可以出来指令的帮助文档。因为回原点有很多种模式,点开之后可以看到模式有好多个,一般来讲比较常用的是主动回原点和直接绝对回原点。
·模式三是主动回原点,模式零是直接绝对回原点。模式零就是直接把当前的位置设定为原点,不会检测任何东西。电机现在所处的位置只要触发回原点按钮,就认为当前的位置就是原点了。
如果模式填的是零,下面position可以理解为是偏移量,比如定义的位置不希望它是圆点,希望它偏移一点点,比如这里填个10,一触发回原点按钮就会认为现在在的位置是10,再往后退时就是原点。
但是偏移量要看情况,先按零来设置,模式是零的情况下只要触发回原点按钮,系统就会认为电机现在所处的位置就是原点。可以通过手动移动到喜欢的位置,只是演示可以用这种方式,非常的简单,也不需要跟外部有任何的交互。
在有足够的开关去检测它的时候一般不用零,用模式零来做还原脸,只是用于前期用来调试的时候拿来用的。
相关问答
plc控制步进电机的转速和转向需要哪几步?
第一步,将步进电机的转速传感器与plc的模拟量输出模块采连接,同时将转向传感器与plc的开关量输出模块连接。第二步,在plc程序中定义两个变量,分别储存转速传...
三菱plc步进程序怎么写?
要写三菱PLC步进程序,需要先确定控制的对象和算法,然后使用三菱PLC编程软件编写程序。在编写程序过程中,需要设置控制模块的输入输出口和各种参数,分配内存,...
abplc如何控制步进?
第一步,将步进电机的转速传感器与plc的模拟量输出模块采连接,同时将转向传感器与plc的开关量输出模块连接。第二步,在plc程序中定义两个变量,分别储存转速传...
三菱之后plc1s想控制步进电机,编一个程序。先让电机走3圈,...
[最佳回答]基于PMAC的数控火焰切割机数控系统开发摘要:通过分析数控火焰切割机加工工艺的特点,开发了基于工业PC机和PMAC卡的数控火焰切割机数控系统,并对它...
加工中心宏程序来回铣深度怎么编?
您好,编写加工中心宏程序来回铣深度需要以下步骤:1.定义加工深度变量,例如depth。2.设置初始加工深度,例如depth=0。3.设置加工循环次数,例如num_lo...
plc中st是什么意思?
plc中st意思是指StructuredText,是一种基于结构化编程的PLC编程语言。它的语法类似于Pascal语言,具有易读性和易维护性的特点,适用于复杂的控制算法和数据处...
plc程序如何产生脉冲-185****3044的回答-懂得
{y1}------plsyk500k600y0y0脉冲发生口接步进电机驱动器K500是频率也就是速度根据你的需要修改数值K600是脉冲数也就是脉冲个数你可以设成99...
plc有哪些软元件用于编程?
有:1.输入继电器(x)2.输出继电器(Y)3.辅助继电器(M)在PLC的编程语言中,涉及X、Y、M、S、T、C等多种PLC内部的编程元件,这些元件并不表示实际的物理器件...10...
plc程序如何产生脉冲-9RiPV7Znrm的回答-懂得
用脉冲输出指令,设定好频率,脉冲个数,脉冲输出口,就可以了前提是你的PLC支持脉冲指令才行下面是产生1秒的脉冲信号的方法:方法1:采用硬件组态中CP...
计算机图形学实验:分别用DDA算法和中点算?
DDA称为数值微分画线算法,是直线生成算法中最简单的一种.原理相当简单,就是最直观的根据斜率的偏移程度,决定是以x为步进方向还是以y为步进方向.然后在相应的...