三菱GX Works2指令plsy,plsr,plsv,dvit,drva,drvi的区别?

以下是三菱GX Works2(FX系列PLC,如FX3U/FX3G/FX3UC等)中脉冲输出/定位指令PLSY、PLSR、PLSV、DVIT、DRVA、DRVI的重新完整总结。重点突出核心区别、快速记忆口诀和每条指令的核心特点。核心区别对比表(最清晰一览)

指令 是否有定位功能(自动跟踪当前位置) 位置类型 速度控制方式 是否带加减速(斜坡) 是否支持运行中改速 是否需外部中断 方向处理方式 是否自动更新脉冲当前值寄存器 典型使用场景简述 输出限制
PLSY × 定速(固定) × × × 需外部控制方向 × 最简单恒速、无定位需求 Y000/Y001
PLSR × 相对(固定脉冲数) 定速 + 单段加减速 ○(统一加/减速时间) × × 需外部控制方向 × 需要平滑启动/停止、防丢步的固定距离 Y000/Y001
PLSV △(需自己实现) 可变速(运行中随时改) ×(可软加M8338) ○(立即生效) × 频率正负或外部方向 △(可配合当前值) 实时调速(如模拟量/按钮变速) Y000/Y001
DVIT 相对 定速 × × ○(必须) 自动(外部方向可选) 外部传感器/标记中断精确定位 Y000/Y001
DRVI 相对(增量) 定速 × × × 自动(正负决定) 重复固定距离移动、简单相对定位 Y000/Y001
DRVA 绝对 定速 × × × 自动(与当前值比较) 固定坐标系、回零后绝对定位 Y000/Y001

核心区别总结(最常被问到的5点)

  1. 有没有自动位置记忆与跟踪(最关键)
    PLSY / PLSR → 没有(跑完就忘)
    PLSV → 没有内置,但可自己用当前值寄存器跟踪
    DVIT / DRVI / DRVA → 有(自动更新 D8340/D8341 等脉冲当前值)
  2. 速度能否运行中改变
    只有 PLSV 支持(改频率立即生效)
    其他指令运行期间速度固定(PLSR 加减速仅启动/停止时)
  3. 是否带自动加减速(斜坡)
    只有 PLSR 内置单段加减速(加/减速时间统一,不能分开)
    其他无(PLSV 可通过 M8338 软开简单加减速,较新版本支持)
  4. 位置是相对还是绝对
    DRVI / DVIT → 相对(走多少步/中断后停)
    DRVA → 绝对(走到第几步的位置)
    其他无定位概念
  5. 是否需要外部信号辅助精确定位
    只有 DVIT 必须用外部中断(X中断)触发停止
    其他靠脉冲数或当前位置计算
    快速记忆口诀(6句搞定)
  • PLSY:简单恒速发脉冲 → “最原始”
  • PLSR:带加减速固定数 → “温柔起步防丢步”
  • PLSV:运行中随时改速 → “实时调速王”
  • DVIT:外部中断来定位 → “传感器喊停”
  • DRVI:相对走多少步 → “每次再走XX步”
  • DRVA:绝对走到哪 → “回家到固定坐标”
    每条指令核心特点一句话提炼
  • PLSY:最简单、最快响应、无任何花样,纯发固定数量定速脉冲,无位置记忆、无方向自动处理。
  • PLSR:PLSY + 单段加减速,适合步进电机防丢步/减冲击的固定距离移动,但无位置记忆。
  • PLSV:唯一支持“运行中随时改频率”的指令,适合模拟量/按钮/HMI实时变速,无斜坡(突变可能丢步)。
  • DVIT:定速 + 外部中断信号触发精确停止,适合色标、限位、标记检测等需要“外部事件”定位的场合。
  • DRVI:相对定位(增量),自动方向 + 位置记忆,适合重复固定距离、送料、分度等“走多少就多少”的应用。
  • DRVA:绝对定位,自动方向 + 位置记忆 + 暂停后可继续,适合建立坐标系、机械手/CNC回零后精确定位。
    实际项目优先级建议:简单需求 → PLSY/PLSR;需要变速 → PLSV;需要精确定位 → DRVI(相对)或 DRVA(绝对);需要外部触发 → DVIT。




PLSV 指令的核心优势就是“运行中随时改速度”(无自动斜坡),修改S(频率源)后,PLC 几乎立即(下一个扫描周期内)就把输出脉冲频率切换到新值,没有内置的加/减速过程(除非你手动用 M8338 或 RAMP 配合)。怎么实现“随时改速度”?最常见的三种方式 + 实际示例方式1:最简单、最常用 → 用一个数据寄存器 D 作为频率源,随时 MOV/加减改 D 的值梯形图示例(假设用 Y000 输出脉冲,Y004 控制方向):

   X000               PLSV
---| |--------------[PLSV D100   Y000   Y004]
   (启动按钮)

   X001               MOV
---| |--------------[MOV K5000  D100]     // 按下X001 → 速度设为5000Hz

   X002               MOV
---| |--------------[MOV K2000  D100]     // 按下X002 → 降到2000Hz

   X003               MOV
---| |--------------[MOV K8000  D100]     // 按下X003 → 加速到8000Hz

   X004               MOV
---| |--------------[MOV K0     D100]     // 按下X004 → 立即停止(频率设0)
  • 解释:
    • X000 按下后,PLSV 开始以 D100 当前值(初始假设为0)输出脉冲。
    • 以后你随时按 X001/X002/X003,D100 值一变,脉冲频率立刻跟着变(通常几 ms 内生效)。
    • 想停就 MOV K0 到 D100。
    • 方向:Y004 ON=正转,OFF=反转(也可以用负频率:MOV K-3000 D100 就反转3000Hz)。

方式2:用模拟量输入(电流/电压)实时控制速度(最典型工业应用)假设用 FX3U 的模拟量模块(FX3U-4AD),通道 CH1 读 04000 的模拟值,转成频率 010000Hz。

   X000               PLSV
---| |--------------[PLSV D200   Y000   Y004]

   (每扫描周期或用定时中断)
   -------------------[MUL D100 K25   D200]    // 假设D100是模拟量值0~4000,×25=0~100000(32位时用DPLSV)
   -------------------[DIV D200 K10   D200]    // 再除10,得0~10000Hz
  • 电位器/变送器 → 模拟量 → D100 → 计算 → D200 → PLSV 频率。
  • 转速就跟模拟量实时同步变化(无斜坡,响应非常快)。

方式3:用按钮/编码器增减速度(渐变调速)

   X010               INC           // 加速按钮,按一次+500Hz
---| |--------------[INC D100]

   X011               DEC           // 减速按钮,按一次-500Hz
---| |--------------[DEC D100]

   X012               MOV
---| |--------------[MOV K3000 D100]  // 复位到3000Hz

   X000               PLSV
---| |--------------[PLSV D100   Y000   Y004]
  • 按加速键,D100 逐步增加,电机越来越快。
  • 限幅保护(可选):用比较指令 CMP,如果 D100 > K10000 就 MOV K10000 D100。

注意的几个关键点(避免踩坑)

  1. 改方向要小心:运行中直接从正频率 → 负频率(或反之),电机可能刹不住或丢步。推荐先 MOV K0 停一下,再改方向和频率。
  2. 无斜坡 = 可能丢步:步进电机高速运行中突然大幅改速(比如从8000Hz直降到1000Hz),容易丢步或过冲。需要防丢步时,建议:
    • 用 RAMP 指令(FNC67)软改变 D100 值(制造人工斜坡)。
    • 或在 FX3U 较新版本,置 M8338=1 让 PLSV 自己带简单加减速(查手册确认版本支持)。
  3. 频率范围:16位 PLSV → ±1±32767 Hz;32位 DPLSV → ±1±100k Hz(视机型)。
  4. 停止:把频率设为 K0 最干净(别直接断 PLSV 驱动条件,否则可能脉冲残留)。

实际项目中最常这样用:一个主启动按钮触发 PLSV(频率初始值放 D100),然后用 HMI/按钮/模拟量/编码器随时改 D100,实现“随时调速、无需停止”。PLSV 指令的核心优势就是“运行中随时改速度”(无自动斜坡),修改S(频率源)后,PLC 几乎立即(下一个扫描周期内)就把输出脉冲频率切换到新值,没有内置的加/减速过程(除非你手动用 M8338 或 RAMP 配合)。怎么实现“随时改速度”?最常见的三种方式 + 实际示例方式1:最简单、最常用 → 用一个数据寄存器 D 作为频率源,随时 MOV/加减改 D 的值梯形图示例(假设用 Y000 输出脉冲,Y004 控制方向):

   X000               PLSV
---| |--------------[PLSV D100   Y000   Y004]
   (启动按钮)

   X001               MOV
---| |--------------[MOV K5000  D100]     // 按下X001 → 速度设为5000Hz

   X002               MOV
---| |--------------[MOV K2000  D100]     // 按下X002 → 降到2000Hz

   X003               MOV
---| |--------------[MOV K8000  D100]     // 按下X003 → 加速到8000Hz

   X004               MOV
---| |--------------[MOV K0     D100]     // 按下X004 → 立即停止(频率设0)
  • 解释:
    • X000 按下后,PLSV 开始以 D100 当前值(初始假设为0)输出脉冲。
    • 以后你随时按 X001/X002/X003,D100 值一变,脉冲频率立刻跟着变(通常几 ms 内生效)。
    • 想停就 MOV K0 到 D100。
    • 方向:Y004 ON=正转,OFF=反转(也可以用负频率:MOV K-3000 D100 就反转3000Hz)。

方式2:用模拟量输入(电流/电压)实时控制速度(最典型工业应用)假设用 FX3U 的模拟量模块(FX3U-4AD),通道 CH1 读 04000 的模拟值,转成频率 010000Hz。

   X000               PLSV
---| |--------------[PLSV D200   Y000   Y004]

   (每扫描周期或用定时中断)
   -------------------[MUL D100 K25   D200]    // 假设D100是模拟量值0~4000,×25=0~100000(32位时用DPLSV)
   -------------------[DIV D200 K10   D200]    // 再除10,得0~10000Hz
  • 电位器/变送器 → 模拟量 → D100 → 计算 → D200 → PLSV 频率。
  • 转速就跟模拟量实时同步变化(无斜坡,响应非常快)。

方式3:用按钮/编码器增减速度(渐变调速)

   X010               INC           // 加速按钮,按一次+500Hz
---| |--------------[INC D100]

   X011               DEC           // 减速按钮,按一次-500Hz
---| |--------------[DEC D100]

   X012               MOV
---| |--------------[MOV K3000 D100]  // 复位到3000Hz

   X000               PLSV
---| |--------------[PLSV D100   Y000   Y004]
  • 按加速键,D100 逐步增加,电机越来越快。
  • 限幅保护(可选):用比较指令 CMP,如果 D100 > K10000 就 MOV K10000 D100。

注意的几个关键点(避免踩坑)

  1. 改方向要小心:运行中直接从正频率 → 负频率(或反之),电机可能刹不住或丢步。推荐先 MOV K0 停一下,再改方向和频率。
  2. 无斜坡 = 可能丢步:步进电机高速运行中突然大幅改速(比如从8000Hz直降到1000Hz),容易丢步或过冲。需要防丢步时,建议:
    • 用 RAMP 指令(FNC67)软改变 D100 值(制造人工斜坡)。
    • 或在 FX3U 较新版本,置 M8338=1 让 PLSV 自己带简单加减速(查手册确认版本支持)。
  3. 频率范围:16位 PLSV → ±1±32767 Hz;32位 DPLSV → ±1±100k Hz(视机型)。
  4. 停止:把频率设为 K0 最干净(别直接断 PLSV 驱动条件,否则可能脉冲残留)。

实际项目中最常这样用:一个主启动按钮触发 PLSV(频率初始值放 D100),然后用 HMI/按钮/模拟量/编码器随时改 D100,实现“随时调速、无需停止”。




请举例说明,三菱gx works编程中,plsy,plsr,plsv,dvit,drvi,drva的用法。

三菱GX Works编程中定位指令用法举例

三菱PLC(主要是FX3U/FX3G/FX5系列等)内置定位指令常用于步进电机或伺服电机的脉冲控制。这些指令在GX Works2/GX Works3中直接支持,主要通过Y0/Y1/Y2等高速输出点发送脉冲(通常Y0为脉冲,Y1为方向)。下面逐一说明PLSY、PLSR、PLSV、DVIT、DRVI、DRVA的用法、格式和简单示例。示例基于FX3U系列,假设控制Y0轴(脉冲输出Y0,方向Y1)。

1. PLSY(脉冲输出指令,无加减速)

  • 功能 :以固定频率输出指定数量的脉冲,无加速/减速过程。启动立即全速,停止立即停止。不适合高速精密控制(冲击大)。

  • 格式 :PLSY S1(频率) S2(脉冲数) D(输出点,如Y0)

  • 参数范围 :频率1~100000Hz,脉冲数K/H(16/32位)。

  • 示例 :当X0=ON时,从Y0输出10000个脉冲,频率5000Hz,正转(方向由M8341控制或Y1手动)。

    [LD X0]
    [PLSY K5000 K10000 Y0]  // 频率5000Hz,脉冲10000个,输出到Y0
    

    应用:简单点位控制,如输送带固定距离移动。

2. PLSR(带加减速脉冲输出指令)

  • 功能 :输出脉冲时带有加速/减速过程,避免冲击。适合步进/伺服平滑启动停止。

  • 格式 :PLSR S1(频率) S2(脉冲数) S3(加减速时间) D(输出点)

  • 参数 :加减速时间通常10~500ms。

  • 示例 :X0=ON时,最大频率20000Hz,输出50000个脉冲,加减速时间200ms。

    [LD X0]
    [PLSR K20000 K50000 K200 Y0]  // 加速到20000Hz,输出50000脉冲,200ms加减速
    

    应用:需要平滑加速的定位,如机械臂移动。

3. PLSV(变速脉冲输出指令)

  • 功能 :可动态改变输出频率(变频控制),无固定脉冲数,指令执行期间持续输出,直到停止标志。适合变速跟随或手动调速。

  • 格式 :PLSV S1(频率) D(输出点)

  • 注意 :需用M8340/M8350等标志停止输出;频率可在线修改。

  • 示例 :X1=ON启动变速输出,频率由D10控制;X2=ON停止。

    [LD X1]
    [PLSV D10 Y0]  // 频率取D10值
    [LD X2]
    [OUT M8350 ON]  // 停止Y0输出(特殊M标志)
    

    应用:手动调速或电子凸轮变速控制。

4. DVIT(中断定位指令,单速中断定长定位)

  • 功能 :以指定速度输出脉冲,当检测到中断输入信号(通常X0~X5高速输入)时,立即或减速停止。适合精确中断停止(如传感器触发停止)。

  • 格式 :DVIT S1(脉冲数) S2(速度) D1(中断输入,如X0) D2(输出点,如Y0)

  • 注意 :中断信号下降沿触发;可设置偏置速度、减速停止等(通过特殊寄存器)。

  • 示例 :X10=ON启动,目标脉冲100000,速度10000Hz,当X0中断信号来时减速停止。

    [LD X10]
    [DVIT K100000 K10000 X0 Y0]  // 中断输入X0,输出Y0
    

    应用:飞剪、定长切割(运行中遇到传感器信号中断停止)。

5. DRVI(相对定位指令,增量驱动)

  • 功能 :相对当前位置输出指定脉冲数(相对定位),带自动加减速。定位完成后BUSY标志清零。

  • 格式 :DRVI S1(脉冲数) S2(速度) D(输出点)

  • 注意 :脉冲数正值为正转,负值为反转;使用当前值寄存器D8340/D8341跟踪位置。

  • 示例 :X3=ON时,相对移动+20000脉冲(正转),最大速度30000Hz。

    [LD X3]
    [DRVI K20000 K30000 Y0]  // 相对+20000脉冲
    

    应用:重复相对移动,如机械手抓取固定距离。

6. DRVA(绝对定位指令,绝对驱动)

  • 功能 :向绝对位置定位(基于原点),带加减速。需先建立原点(ABS读取或零返回)。

  • 格式 :DRVA S1(绝对位置) S2(速度) D(输出点)

  • 注意 :位置与当前值寄存器比较,正转/反转自动判断;常配合ABS指令读取伺服当前绝对位置。

  • 示例 :X4=ON时,定位到绝对位置50000,速度25000Hz。

    [LD X4]
    [DRVA K50000 K25000 Y0]  // 绝对定位到50000
    

    应用:多点绝对定位,如多工位转台。

注意事项(通用)

  • 输出轴:Y0/Y1/Y2/Y3(视机型),方向通常由Y1/Y3或特殊M8341等控制。
  • 速度/加减速参数:需设置特殊寄存器(如D8342偏置速度、D8343最大速度)。
  • 监控:用D8340(当前脉冲低32位)、M8348(定位完成标志)等监控。
  • 编程环境:在GX Works中,这些为应用指令,直接拖拽使用。
  • 实际应用前请参考具体机型手册(如FX3U定位手册),参数范围因系列略有差异。

这些指令常组合使用(如DRVA+ABS实现绝对定位)。

哪些指令的值可以用负数来表示反转?

三菱GX Works定位指令中支持负数表示反转的指令

在您提到的六条指令(PLSY、PLSR、PLSV、DVIT、DRVI、DRVA)中, 只有DRVI和DRVA 支持通过参数 负数 来表示反转方向。其余指令的脉冲数/频率/位置参数均为 正值 (或无符号),方向需通过单独的方向输出(Y1/Y3等)或特殊M标志(如M8341)控制。

1. DRVI(相对定位指令)

  • 支持负数 :是的

  • 参数 :S1(移动脉冲数/距离)

    • 正数:正转(正方向移动)
    • 负数:反转(负方向移动)
  • 示例

    [LD X3]
    [DRVI K20000 K30000 Y0]   // 正转相对移动20000脉冲
    [LD X4]
    [DRVI K-15000 K30000 Y0]  // 反转相对移动15000脉冲
    
  • 说明 :最常用、最直接的负数反转方式。

2. DRVA(绝对定位指令)

  • 支持负数 :是的(取决于坐标系)

  • 参数 :S1(绝对目标位置)

    • 正数:向正方向定位
    • 负数:向负方向定位(坐标系原点后,负值表示负方向位置)
  • 示例

    [LD X5]
    [DRVA K50000 K30000 Y0]   // 定位到绝对位置+50000
    [LD X6]
    [DRVA K-30000 K30000 Y0]  // 定位到绝对位置-30000(自动反转)
    
  • 说明 :方向由当前值寄存器(D8340/D8350等)与目标位置比较自动判断。负目标位置会自动反转。

不支持负数的指令(方向需另行控制)

  • PLSY、PLSR、PLSV、DVIT
    • 这些指令的脉冲数(S2)或频率(S1/S2)参数 必须为正值 (K0~K2147483647 或类似范围)。

    • 负数会报错或被视为无效。

    • 反转方式:

      • 使用方向输出点(Y1/Y3等,高电平正转/低电平反转)。
      • 或通过特殊M标志(如M8341=ON正转,OFF反转)。
    • 示例(以PLSY为例):

      [LD X0]
      [OUT Y1 ON]               // 正转方向
      [PLSY K5000 K10000 Y0]
      [LD X1]
      [OUT Y1 OFF]              // 反转方向
      [PLSY K5000 K10000 Y0]
      

总结表

指令 是否支持负数表示反转 负数参数 反转替代方式
PLSY 方向输出Y1或M标志
PLSR 方向输出Y1或M标志
PLSV 方向输出Y1或M标志
DVIT 方向输出Y1或M标志
DRVI 移动脉冲数(S1)
DRVA 绝对目标位置(S1)

登录

注册

重设密码

请输入您的用户名或电子邮箱地址。您会收到一封包含创建新密码链接的电子邮件。