一、基础说明
FX3U-1PG:单轴脉冲定位模块,支持差分 / 集电极输出,最大 100kHz,自带电子齿轮、原点回归、寸动、多段速定位。
占用 IO:FX3U-1PG 固定占用 8 个输入、8 个输出,特殊模块编号:紧靠 PLC 右侧第 1 块:
K0;第 2 块:K1,程序以 K0(1PG 模块 0) 举例。接线信号:
PG0+ / PG0-:脉冲输出
DR0+ / DR0-:方向输出
DOG:近点狗信号(原点减速)
PG0X:原点限位
FLG:故障输出
STOP:急停停止
二、1PG 核心缓存寄存器(BFM)重点表
1. 参数设置 BFM(写入,#0~#19)
表格
| BFM 编号 | 功能 | 常用设定 |
|---|---|---|
| #0 | 脉冲输出模式 | K0:正转脉冲 + 反转脉冲;K1:脉冲 + 方向(伺服通用) |
| #1 | 单位 / 倍率 电子齿轮分子 | 1~32767,伺服 10000 脉冲 / 圈设 K10000 |
| #2 | 电子齿轮分母 | K1,电机一圈脉冲数 |
| #3 | 原点回归速度 | 低速,K1000~K5000 |
| #4 | 原点回归爬行速度 | K200~K800 |
| #5 | 原点回归方向 | K0:正方向回零;K1:反方向回零 |
| #6 | 原点停留偏移量 | 原点到位后额外移动脉冲,K0 |
| #7 | 寸动低速 | K500 |
| #8 | 寸动高速 | K5000 |
| #9 | 加速时间 ms | K100~K500 |
| #10 | 减速时间 ms | K100~K500 |
| #11 | 目标定位脉冲(低 16 位) | 定位数量低位 |
| #12 | 目标定位脉冲(高 16 位) | 定位数量高位 |
| #13 | 定位运行速度 | K1000~100000 |
| #14 | 运行模式 | K0:绝对定位;K1:相对定位;K2:原点回归;K3:寸动 |
2. 状态读取 BFM(读取 #20~#29)
表格
| BFM | 含义 |
|---|---|
| #20 | 当前脉冲值低 16 位 |
| #21 | 当前脉冲值高 16 位 |
| #25 | 运行状态标志位(bit0:运行中;bit1:原点完成;bit4:故障) |
3. 关键指令
TO K0 BFM编号 S D:PLC 写入数据到 1PG 模块缓存FROM K0 BFM编号 S D:读取 1PG 缓存到 PLC 寄存器1PG 启动命令:M0(模块 0 启动位),ON 开始执行定位
三、完整标准化程序(GX Works2/3 通用,梯形图 + STL)
系统配置
FX3U-1PG 模块编号 K0
伺服:脉冲 + 方向模式,一圈 10000 脉冲
绝对定位、相对定位、原点回归、寸动四段功能
1. 网络 1:上电初始化 1PG 参数(M8002 仅首次扫描)
stl
NETWORK 1 初始化1PG模块参数 LD M8002 // #0 脉冲模式:脉冲+方向 K1 TO K0 K0 K1 K1 // #1 电子齿轮分子10000,#2分母1 TO K0 K1 K10000 K2 // #3 回零高速3000,#4爬行500 TO K0 K3 K3000 K2 // #5 回零方向正转K0 TO K0 K5 K0 K1 // #7寸动低速500,#8寸动高速5000 TO K0 K7 K500 K2 // #9加速200ms,#10减速200ms TO K0 K9 K200 K2
2. 网络 2:原点回归子程序 X0 触发回零
stl
NETWORK 2 X0原点回归启动 LD X0 ANI M0 // 运行模式#14=K2(原点回归) TO K0 K14 K2 K1 SET M0 // M0=1PG启动 RST M1 // 绝对定位标志 RST M2 // 相对定位标志 RST M3 // 寸动标志
3. 网络 3:绝对定位 X1 启动,目标脉冲 D100(32 位),速度 D200
D101:脉冲高 16 位;D100:脉冲低 16 位;D200:运行速度
stl
NETWORK 3 X1 绝对定位 LD X1 ANI M0 // 模式#14=K0 绝对定位 TO K0 K14 K0 K1 // 写入目标脉冲高低位 TO K0 K11 D100 K1 TO K0 K12 D101 K1 // 写入运行速度 TO K0 K13 D200 K1 SET M0 SET M1 RST M2 RST M3
4. 网络 4:相对定位 X2 启动
stl
NETWORK 4 X2 相对定位 LD X2 ANI M0 TO K0 K14 K1 K1 TO K0 K11 D300 K1 TO K0 K12 D301 K1 TO K0 K13 D400 K1 SET M0 SET M2 RST M1 RST M3
5. 网络 5:寸动模式 X3 点动正转 / X4 点动反转
stl
NETWORK 5 寸动模式 LD X3 // 寸动正转 OR X4 // 寸动反转 ANI M0 TO K0 K14 K3 K1 SET M3 // X3 ON寸动高速输出 LD X3 OUT M0 // X4反向寸动 LD X4 OUT M0
6. 网络 6:运行完成自动复位 M0,读取当前位置
stl
NETWORK 6 读取1PG运行状态、当前脉冲 LD M8000 // 读取状态寄存器#25到D500 FROM K0 K25 D500 K1 // Bit0=0 运行完成,复位启动M0 LD M8000 ANI M500.0 RST M0 // 读取当前坐标32位(#20低,#21高) FROM K0 K20 D600 K2
7. 网络 7:故障报警(bit4 故障位)
stl
NETWORK 7 1PG故障报警 LD D500.4 SET Y0 // 故障指示灯 RST M0
四、实操调用示例(直接改数值即可用)
示例 1:绝对定位走到 50000 脉冲,速度 8000
plaintext
MOV K50000 D100 DMOV D100 D101 MOV K8000 D200 按下X1自动走到位
示例 2:相对移动 +10000 脉冲
plaintext
MOV K10000 D300 MOV K5000 D400 按下X2
示例 3:原点回归
按下 X0,自动找 DOG 原点,到位后 M500.1(#25bit1)置 1
五、关键注意事项(现场踩坑点)
32 位脉冲处理目标脉冲超过 32767 必须分高低 16 位写入 BFM#11、#12,用 DMOV 传送。
M0 自动复位逻辑BFM#25 bit0 = 0 代表脉冲输出停止,程序自动复位 M0,禁止手动一直置 M0。
停止方式急停 X10:直接 RST M0,1PG 按 #10 减速停止;紧急切断可外部断开 STOP 端子。
多块 1PG 扩展第二块 1PG 使用 K1,TO/FROM 指令全部修改 K1;启动位 M1。
脉冲模式区分步进电机 / 老伺服用 K0(双脉冲);主流伺服全部 K1(脉冲 + 方向)。
电子齿轮配比若丝杆 5mm / 圈,10000 脉冲一圈,1 脉冲 = 0.0005mm;如需按毫米输入可换算寄存器数值。
六、补充:单段自动往返流程示例
X5 触发循环:原点→绝对 50000→相对 - 50000 回原点
stl
LD X5 SET S20 STL S20 X0 原点回归触发 SET S21 STL S21 X1 定位50000 SET S22 STL S22 X2 相对-50000 RST S22 RST S21 RST S20 RET。


