三菱PLCIN指令全从基础到实战的保姆级教程附代码案例

at 2026.02.06 08:48  ca 设备销售区  pv 699  by 工控设备哥  

🔧三菱PLC IN指令全:从基础到实战的保姆级教程(附代码案例)

💡工控新人必看!三菱PLC编程中IN指令的正确用法和避坑指南

一、IN指令基础概念(:三菱PLC IN指令 作用)

1️⃣ IN指令的本质

IN指令是三菱FX系列PLC中用于上升沿检测的核心指令,其功能是当输入信号从OFF变为ON时触发一个扫描周期。相当于给信号装上"触发器",常用于计数器、定时器或状态机的初始化。

2️⃣ 与OUT指令的区别对比

| 特性 | IN指令 | OUT指令 |

|-------------|----------------------|----------------------|

| 触发条件 | 上升沿触发(NPN信号) | 持续触发(PNP信号) |

| 执行周期 | 仅上升沿瞬间执行 | 每扫描周期执行 |

| 适用场景 | 计数器复位、状态启动 | 持续控制输出 |

3️⃣ 常见应用场景

✅ 计数器复位操作(C0→C1)

✅ 状态寄存器初始化(M0→M10)

✅ 传感器信号处理(光电开关检测)

✅ 累计脉冲信号(编码器输入)

二、IN指令语法详解(:三菱PLC编程 代码示例)

1️⃣ 标准语法格式

IN D0, N0

参数说明:

- D0:目标寄存器(建议用连续编号)

- N0:输入信号编号(建议用连续编号)

2️⃣ 扩展语法(FX3U系列)

IN D0, N0, M1, M2

参数说明:

- M1:上升沿检测触发器

- M2:保持信号记忆

3️⃣ 梯形图编程技巧

🔥 代码示例1(基础用法):

| 信号输入 | IN X0 | → 执行说明:X0上升沿触发

|----------|--------|--------------------------|

| 目标寄存 | M0 | → M0置1并保持

🔥 代码示例2(计数器复位):

| 计数器 | C0 | → C0当前值清零

|--------|-------|----------------|

| 复位 | IN C0 | → C0上升沿触发复位

4️⃣ 常见错误代码

❌ 错误1:IN指令与OUT混用导致死循环

```错误代码

| X0 | IN X0 | → M0置1后持续触发

|--------|--------|------------------|

| M0 | OUT Y0 | → Y0持续输出

```

✅ 正确写法:

```正确代码

| X0 | IN X0 | → 仅上升沿触发

|--------|--------|------------------|

| M0 | OUT Y0 | → M0保持后触发

```

三、IN指令应用场景(:三菱PLC实战案例)

1️⃣ 光电计数应用(案例编号:SC-1001)

需求:统计传送带经过物品数量

硬件配置:

- PLC:FX3N-32MR

- 传感器:E3-FD3-NH

- 电机:YD-SS7S

软件实现:

```梯形图代码

| 传感器信号 | IN X0 | → 上升沿触发计数

|------------|--------|------------------|

| 计数器 | C0 | → 当前值C0

| 输出信号 | OUT Y0 | → 计数到50报警

```

调试要点:

- 信号延迟补偿:D0→D1延时1ms

- 防抖处理:X0→X1双脉冲检测

2️⃣ 状态机控制(案例编号:SM-1002)

需求:实现三段式传送带控制

状态转移表:

| 状态 | 输入信号 | 执行动作 |

|------|----------|--------------------|

| S0 | X1 | 启动电机Y0 |

| S1 | X2 | 停止急停Y1 |

| S2 | X3 | 转换至S3状态 |

程序实现:

```梯形图代码

| 状态寄存 | IN M0 | → S0状态启动

|----------|--------|----------------|

| 电机启动 | OUT Y0 | → Y0常开

| 急停检测 | IN X2 | → S0状态中断

| Y0复位 | OUT Y0 | → Y0常闭

```

调试技巧:

- 状态保持:M0→M1→M2连续触发

- 中断优先级设置(PLC参数设置)

四、常见问题解答(:三菱PLC故障排查)

1️⃣ 信号不触发怎么办?

🔧 可能原因:

- 信号线未接通(检查X0→X10引脚)

- PLC输入继电器老化(更换X0模块)

- 程序语法错误(检查IN指令后无跳转)

图片 🔧三菱PLCIN指令全:从基础到实战的保姆级教程(附代码案例)

🔧 排查步骤:

① 用万用表测量X0电压是否≥3V

② 在程序监控中观察X0状态(X0→X10)

③ 检查IN指令与OUT指令的执行顺序

2️⃣ 计数器抖动问题

🔧 解决方案:

- 添加软件去抖:D0→D1延时1ms

- 硬件去抖:使用防抖电路(RC滤波+施密特)

- 检查电源波动(建议使用稳压电源)

3️⃣ 程序运行异常

🔧 典型错误:

- IN指令与OUT指令混用导致死循环

- 目标寄存器未正确初始化(M0→M10)

- 未设置PLC运行模式(STOP→RUN)

五、进阶应用技巧(:三菱PLC高级编程)

1️⃣ 批量处理技巧(适用于FX5U系列)

图片 🔧三菱PLCIN指令全:从基础到实战的保姆级教程(附代码案例)2

IN指令批量触发:

```高级代码

| 批量信号 | IN X0 X1 X2 | → 同时检测3个信号

|----------|-------------|------------------|

| 目标寄存 | OUT Y0 Y1 Y2 | → 同时输出控制

```

适用场景:多传感器同时检测

| 信号输入 | IN X0 | → 上升沿触发

|----------|--------|----------------|

| 延时处理 | OUT D0 | → 延迟3秒执行

| 输出保持 | T0 K300 | → 定时器保持

```

3️⃣ 与西门子PLC对比(知识扩展)

三菱IN指令 vs 西门子N表示例:

| 功能 | 三菱PLC | 西门子S7-1200 |

|-------------|---------|--------------|

| 上升沿检测 | IN指令 | N表示例 |

| 执行频率 | 1Hz | 1Hz |

| 适用型号 | FX系列 | S7-1200 |

六、学习资源推荐(:三菱PLC学习资料)

1️⃣ 官方资料:

- 《FX3G/FX3U编程指南》重点章节:P.45-50

2️⃣ 实验平台:

- 基础版:三菱PLS-20模拟器(免费)

- 实操版:FX3N-32MR+教学套件(淘宝¥1680)

3️⃣ 在线课程:

- B站《三菱PLC30天速成课》(更新)

- 知乎专栏《从零开始学PLC》(含IN指令专题)

七、与建议(:三菱PLC学习建议)

1️⃣ 技能树构建建议

- 基础层:掌握X/Y/M寄存器操作(3天)

- 进阶层:IN/OUT指令组合(5天)

- 实战层:完成5个完整项目(10天)

2️⃣ 每日练习计划

- 上午:分析1个故障案例(30分钟)

- 下午:编写2段代码(各40分钟)

- 晚上:学习1个高级技巧(20分钟)

3️⃣ 考试准备指南

- 三菱认证考试重点:IN指令应用(占比35%)

- 模拟题库:官方题库+知乎真题集(共120题)

- 考试技巧:注意信号延时设置(常考易错点)

💬 互动话题:

你在用IN指令时遇到过哪些问题?欢迎在评论区分享你的PLC编程故事,点赞最高的前3名将获得《三菱PLC高级编程手册》电子版!

相关阅读