PLC基础知识整理(三菱) - 扩展
目录
- 前言
- 一、电机脉冲
- 1、DRVI、DRVA相对、绝对定位指令
- 1、DRVI(相对定位)
- 2、DRVA(绝对定位)
- 3、DRVI与DRVA区别
- 2、PLSY、PLSR不带、带加减速脉冲输出步进指令
- 1、PLSY(脉冲输出 - 无加减速)
- 2、PLSR(带加减速脉冲输出)
- 3、ZRN/DZRN、DSZR 回原点指令
- 1、ZRN/DZRN - 回原点指令
- 2、DSZR - 带DOG搜索的回原点指令
- 4、ZRST批量复位指令
- 5、电机脉冲特殊辅助继电器
- 二、其他
- 1、PLC编程软件自动换行机制
- 2、电机扩展问题
- 1)FX系列PLC脉冲输出端口的硬件限制
- 2)扩展轴的特殊软元件分配规则
前言
最近在学习三菱plc编程,对电机使用,比较频繁,汇总一下目前使用电机的脉冲指令,目前是使用FX系列的三菱产品,所以指令只适用于FX系列三菱PLC。
一、电机脉冲
1、DRVI、DRVA相对、绝对定位指令
定位控制核心:控制电机(伺服、闭环步进) 精确移动到目标位置,通常需闭环反馈(如编码器)确保精度。
注 闭环控制:通过实时位置反馈纠正误差,避免累积偏差。
1、DRVI(相对定位)
1)格式:
DRVI S1 S2 D1 D2 DRVI K10000 K1000 Y0 Y2 //从当前位置正向移动10000脉冲,速度1kHz
参数说明:
S1: 脉冲数(相对移动量,正负表示方向)
S2: 脉冲频率(速度)
D1: 脉冲输出端口(如Y0)
D2: 方向信号端口(如Y2)
一般使用DDRVI指令,其中差异如下:
1)脉冲范围与精度
- DRVI:16位数据,限制单次最大脉冲数为±32,767。
- DDRVI:32位数据,可处理超长行程(如数百万脉冲)。
2)硬件兼容性
- DRVI:兼容所有FX系列PLC(包含老旧型号如FX1N)。
- DDRVI:仅FX3U/FX3G/FX5U及以上型号支持,需确认硬件版本。
3)编程便利性
- DRVI:若需更大值,需手动拆分32位数据,编程复杂:
DMOV K100000 D100 // 将100,000存入D100(低16位)+D101(高16位)
DRVI D100 K1000 Y0 Y2 // 需用寄存器组合
- DDRVI:能直接处理
DDRVI K100000 K1000 Y0 Y2 //直接写入10万脉冲
2、DRVA(绝对定位)
1)格式:
DRVA S1 S2 D1 D2DRVA K50000 K1000 Y0 Y2 //以1kHz速度移动到绝对位置50000脉冲处
参数说明:
S1:目标绝对位置(基于原点),正负代表原点右左(正向、反向)
S2:脉冲频率(速度)
D1: 脉冲输出端口(如Y0)
D2: 方向信号端口(如Y2)
一般使用DDRVA指令,其中差异与上述DDRVI和DRVI差异一致。
3、DRVI与DRVA区别
特性 | DRVI(相对定位) | DRVA(绝对定位) |
---|---|---|
参考基准 | 以当前位置为起点 | 以机械原点为基准(坐标系零点) |
移动逻辑 | “走多少”(增量式) | “走到哪”(绝对坐标) |
断电后恢复 | 需重新计算剩余距离 | 可直接继续执行(依赖原点记忆) |
原点回归(ZRN) | 无需原点,但长期使用可能导致位置漂移 | 使用DRVA前必须执行原点回归,建立坐标系 |
2、PLSY、PLSR不带、带加减速脉冲输出步进指令
步进电机:一种将电脉冲信号转换为固定角度旋转(步距角)的电机,每接收一个脉冲转动一步(如1.8°)。
注 开环控制:无需编码器反馈,通过脉冲数量控制位置,脉冲频率控制速度。
1、PLSY(脉冲输出 - 无加减速)
1)功能:发送指定频率和数量的脉冲。(控制移动距离)
2)格式:
PLSY K1000 K5000 Y0 //频率1kHz,脉冲数5000,脉冲到Y0口
3)应用:控制电机转速和行程。
2、PLSR(带加减速脉冲输出)
1)功能:平滑启停的脉冲输出
2)格式:
PLSR K1000 K5000 K100 Y0 //目标频率1kHz, 脉冲5000, 加减速时间100ms, 脉冲到Y0口
3)应用:避免电机启停时的冲击。
3、ZRN/DZRN、DSZR 回原点指令
1)回原点指令功能
用于控制伺服/步进电机自动回归机械原点的指令,通过检测近点信号(DOG)和零点信号(Z相),将电机移动到机械原点位置,并清零当前位置寄存器(如M8340)。
2)回原点指令核心作用
- 建立绝对坐标系基准点(机械原点)
- 消除累计误差,确保重复定位精度
注:回原点指令都是默认反转回归
1、ZRN/DZRN - 回原点指令
1)格式
ZRN S1 S2 S3 D
ZRN K10000 K500 X0 Y0 //高速10kHz -> X0原点触发 -> 低速500Hz -> Z相停止
参数说明:
S1:开始原点回归速度(高速接近) - 10~32767Hz
S2:低速爬行速度 - 10~32767Hz
S3:近点信号(DOG)输入地址 - 原点(如X0)
D:脉冲输出端口 - 脉冲(如Y0)
注:ZRN 16位 频率:10~32767Hz,DZRN 32位 频率最大可到达100KHz
2)回原点 - 正转指令编写
2、DSZR - 带DOG搜索的回原点指令
1)格式:
DSZR S1 S2 D1 D2
参数说明:
S1:近点信号(DOG)输入地址
S2:零点信号输入
D1:脉冲输出端口 - 脉冲
D2:电机旋转方向
4、ZRST批量复位指令
1)作用:用于将指定范围内的同类软元件一次性复位为初始状态。
- 复位对象:包括位元件(Y、M、S)、字元件(D、T、C等),复位操作会将位元件置为OFF,字元件清零(=K0)。
- 特点:相比单点复位指令RST,ZRST可高效处理连续地址的批量复位,提升编程效率。
2)格式:
ZRST D1 D2ZRST M0 M10 -> 复位M0~M10共11个辅助继电器。
ZRST D0 D100 -> 清零D0~D100的数据寄存器。
参数说明:
D1:复位起始地址(必须≤D2)。
D2:复位结束地址(必须与D1为同类型元件)。
5、电机脉冲特殊辅助继电器
编号/名称 | 功能 |
---|---|
M8340 | Y0脉冲输出中监控(ON / OFF) |
M8350 | Y1脉冲输出中监控(ON / OFF) |
M8360 | Y2脉冲输出中监控(ON / OFF) |
M8370 | Y3脉冲输出中监控(ON / OFF) |
M8029 | 指令执行结束标志位,仅在特定指令正常执行完毕后接通一个扫描周期。用于监控脉冲输出类指令(如PLSY、DRVI、DRVA等)或功能指令(如DSW、RAMP)的完成状态 |
二、其他
1、PLC编程软件自动换行机制
在编PLC程序时,会有一行写不下的情况,这时会出现自动换行情况,如下图:
注:K0那段就是三菱自动换行机制
2、电机扩展问题
FX系列三菱PLC只有脉冲输出Y0、Y1、Y2、Y3对象软元件,对应着脉冲输出过程中监控标志位M8340、M8350、M8360、M8370这四个标志位,那是不是只能使用4个电机?当然不是!在FX系列PLC中,有些PLC是可以扩展的。
1)FX系列PLC脉冲输出端口的硬件限制
PLC型号 | 默认高速脉冲输出口 | 是否可扩展 | 扩展方式 |
---|---|---|---|
FX0S / FX0 | 无 | ❌ 不可扩展 | 早期型号仅普通I/O功能 |
FX0N | 无 | ❌ 不可扩展 | 早期型号仅普通I/O功能 |
FX1 | Y0(10kHz) | ❌ 不可扩展 | - |
FX1S | Y0(100kHz)、Y1(10kHz) | ❌ 不可扩展 | Y1虽支持脉冲输出,但实际不支持DRVI/DSZR等定位指令,仅能使用PLSY基础指令 |
FX1N / FX1NC | Y0、Y1(最高100kHz) | ✅ 可扩展 | 通过FX2N-1PG(1轴)或FX2N-10PG(1轴,1MHz)扩展 - 最多扩展到8个模块 |
FXU | Y0(10kHz) | ❌ 不可扩展 | - |
FX2C | Y0(20kHz)、Y1(10kHz) | ✅ 可扩展 | 需FX2N-CNV-IF转换器 - 最多扩展到8个模块 |
FX2N / FX2NC | Y0、Y1、Y2(最高100kHz) | ✅ 可扩展 | 支持FX2N-1PG(1轴)、FX2N-10PG(1轴,1MHz)、FX2N-20GM(2轴) - FX2N-20GM为独立运动控制器,需单独编程(最多扩展到8个模块) |
FX3G / FX3GC | Y0、Y1、Y2(最高100kHz) | ✅ 可扩展 | 通过FX3U-2HSY-ADP(2轴,200kHz)或FX2N-1PG(需转换器)- 最多扩展到8个模块 |
FX3U / FX3UC | Y0、Y1、Y2、Y3(最高200kHz) | ✅ 可扩展 | 支持FX3U-2HSY-ADP(2轴)、FX3U-20PG(2轴)、FX2N-10PG(需转换器)- FX3UC需通过扩展总线连接模块(最多扩展到7轴) |
FX5U | Y0、Y1、Y2、Y3(最高200kHz) | ✅ 可扩展 | 通过FX5-20PG-P模块(每模块增加2轴)- FX5U扩展模块支持4MHz高速输出(需配置专用硬件)- 最多扩展到12轴 |
2)扩展轴的特殊软元件分配规则
- FX3U系列(最大扩展至7轴)
轴号 | 脉冲输出口 | 特殊辅助继电器(M) | 数据寄存器(D) | 功能说明 |
---|---|---|---|---|
轴1 | Y0 | M8340~M8359 | D8340~D8359(当前值/参数) | 本体Y0轴(默认) |
轴2 | Y1 | M8360~M8379 | D8360~D8379 | 本体Y1轴(默认) |
轴3 | Y2 | M8380~M8399 | D8380~D8399 | 本体Y2轴(默认) |
轴4 | Y3 | M8400~M8419 | D8400~D8419 | 本体Y3轴(默认) |
轴5 | Y4(扩展) | M8420~M8439 | D8420~D8439 | 第1扩展模块(FX3U-2HSY-ADP) |
轴5 | Y5(扩展) | M8440~M8459 | D8440~D8459 | 第1扩展模块 |
轴6 | Y6(扩展) | M8460~M8479 | D8460~D8479 | 第2扩展模块 |
- FX5U系列(最大扩展至12轴)
轴号 | 脉冲输出口 | 特殊辅助继电器(M) | 数据寄存器(D) |
---|---|---|---|
轴1~4 | Y0~Y3 | M8340~M8419 | D8340~D8359 |
轴5~12 | Y4~Y11(扩展) | M8420~M8579 | D8420~D8579 |