发布网友 发布时间:2022-04-22 12:48
共5个回答
热心网友 时间:2023-06-24 16:21
PLC控制步进电机的实例(图与程序)
·采用绝对位置控制指令(DRVA),大致阐述FX1S控制步进电机的方法。由于水平有限,本实例采用非专业述语论述,请勿引用。
·FX系列PLC单元能同时输出两组100KHZ脉冲,是低成本控制伺服与步进电机的较好选择!
·PLS+,PLS-为步进驱动器的脉冲信号端子,DIR+,DIR-为步进驱动器的方向信号端子。
·所谓绝对位置控制(DRVA),就是指定要走到距离原点的位置,原点位置数据存放于32位寄存器D8140里。当机械位于我们设定的原点位置时用程序把D8140的值清零,也就确定了原点的位置。
·实例动作方式:X0闭合动作到A点停止,X1闭合动作到B点停止,接线图与动作位置示例如左图(距离用脉冲数表示)。
·程序如下图:(此程序只为说明用,实用需改善。)
·说明:
·在原点时将D8140的值清零(本程序中没有做此功能)
·32位寄存器D8140是存放Y0的输出脉冲数,正转时增加,反转时减少。当正转动作到A点时,D8140的值是3000。此时闭合X1,机械反转动作到B点,也就是-3000的位置。D8140的值就是-3000。
·当机械从A点向B点动作过程中,X1断开(如在C点断开)则D8140的值就是200,此时再闭合X0,机械正转动作到A点停止。
·当机械停在A点时,再闭合X0,因为机械已经在距离原点3000的位置上,故而机械没有动作!
·把程序中的绝对位置指令(DRVA)换成相对位置指令(DRVI):
·当机械在B点时(假设此时D8140的值是-3000)闭合X0,则机械正转3000个脉冲停止,也就是停在了原点。D8140的值为0
·当机械在B点时(假设此时D8140的值是-3000)闭合X1,则机械反转3000个脉冲停止,也就是停在了左边距离B点3000的位置(图中未画出),D8140的值为-6000。
·一般两相步进电机驱动器端子示意图:
·FREE+,FREE-:脱机信号,步进电机的没有脉冲信号输入时具有自锁功能,也就是锁住转子不动。而当有脱机信号时解除自锁功能,转子处于自由状态并且不响应步进脉冲。
·V+,GND:为驱动器直流电源端子,也有交流供电类型。
·A+,A-,B+,B-分别接步进电机的两相线圈。
热心网友 时间:2023-06-24 16:21
如图,这个就是一个步进电机的正反转的运行,Y0接步进驱动器的脉冲,Y1接步进驱动器的方向,M0为ON时正转,M1为ON时反转,D0是脉冲的频率,D1是脉冲的个数。
移动速度和脉冲频率有关,在细分数一定的条件下,频率越高速度越快,行走的距离和脉冲个数有关,脉冲个数越多,行走距离越长,(在三菱这个指令中,脉冲个数为0时,是一直运行,相当于无限个数),具体的移动速度和行走距离得根据你的设置(频率,细分数,脉冲个数等)和硬件(包括步进电机的步距角,丝杆的丝距,齿轮组的齿轮比,齿轮带的传送比等)来调节。
望采纳。。。。
热心网友 时间:2023-06-24 16:22
首先你的要求不明确 我看了下 那个嗝1S是一定要完成正传反转之后呢?还是直接按X3反转停止后就开始2000个脉冲反转呢?
下面是我按照X3停止就反转编程的 假设2000个脉冲5秒内完成
输入
X0 正传起动 X1停止
X2 反转起动 X3停止
1S后反转2000 停止
输出Y0 正转 Y1 反转
热心网友 时间:2023-06-24 16:22
程序如图所示,其中X4为反转极限。
追问Y0和Y1分别是什么驱动啊?热心网友 时间:2023-06-24 16:23
很简单的一个动作,不过一个好工程师的程序思路是最重要的,这个程序里面我觉得挺经典,体会一下PLC基本知识和编程思路。