FactoryIO两轴机器人搬运S7-200PLC仿真
适用读者:电气自动化、机电一体化等相关专业本科生,PLC 初学者 涉及软件:Factory IO V2.5.10(Ultimate Edition)、STEP 7-Micro/WIN、S7-200Smart 仿真软件 V3.0.11.1、WPS 表格 实验环境:无需真实 PLC 硬件,一台普通 PC 即可完成全部仿真流程。
一、案例概述
本案例基于 Factory IO 仿真平台搭建一条虚拟生产线,并通过 STEP 7-Micro/WIN 编写 S7-200 梯形图程序,由虚拟 PLC 远程控制 3D 场景中的执行机构,完成"传感器检测 → PLC 逻辑运算 → 执行器动作"的完整控制闭环。 所用 Production Line(生产线)场景包含以下主要设备: • 2 台 CNC Machining Center(数控加工中心) • 1 台 KUKA 六轴机器人(物料搬运) • 多段 Belt Conveyor 传送带(长度 2m / 4m / 6m) • Pop Up Wheel Sorter(轮式分拣器,支持左/右双向分拣) • Lifter(升降机)、Lids/Bases Center(盖板与底座供给中心) • 各类光电传感器、接近开关。

Factory IO 是一款面向工业自动化教学的 3D 仿真软件,可模拟 PLC 与虚拟产线之间的网络通信。配合软件仿真的 PLC,学习者无需采购硬件即可完成接近工程实际的调试训练。
1.1 操作流程总览
| 序号 | 阶段 | 主要操作 | 使用软件 |
|---|---|---|---|
| 1 | 场景搭建 | 打开 Production Line 场景,浏览产线布局 | Factory IO |
| 2 | 驱动配置 | 选择 S7-200/300/400 驱动,填写主机 IP 与 I/O 参数 | Factory IO |
| 3 | 通信连接 | 建立连接并排查网络故障 | Factory IO + Windows 设置 |
| 4 | 地址导出 | 导出 Tags CSV,分析 I/O 地址映射 | Factory IO + WPS 表格 |
| 5 | 程序设计 | 编写梯形图并下载至仿真 PLC | STEP 7-Micro/WIN |
| 6 | 联合调试 | 运行仿真,验证控制逻辑 | 仿真软件 + Factory IO |
二、实验环境与准备工作
2.1 软件配置
| 软件 | 版本 | 用途 |
|---|---|---|
| Factory IO | V2.5.10 Ultimate | 3D 生产线仿真 |
| STEP 7-Micro/WIN | — | S7-200 梯形图编程 |
| S7-200Smart 仿真软件 | V3.0.11.1 | 虚拟 PLC,接受 Factory IO 连接 |
| WPS 表格 / Excel | — | 查看 I/O 地址映射表 |
2.2 网络环境要求
Factory IO 与 PLC 之间通过以太网通信,实验前须满足:
- 计算机接入一个有效网络(本案例使用无线热点,PC 获取的 IP 为
192.168.43.112,网关为192.168.43.1); - Factory IO 驱动中填写的 PLC 主机 IP 必须与 PLC 所处网段一致,否则通信必然失败(本案例首次连接即因此失败,详见第三节)。
三、操作步骤详解
步骤 1:打开生产线场景
启动 Factory IO,载入自带的 Production Line 场景。建议先浏览整个场景,明确物料流向(入口 → 加工 → 搬运 → 分拣 → 出口),为后续编程建立整体认识。
场景编辑基础操作:右键单击场景中的设备可弹出快捷菜单,支持旋转、翻转、删除、复制与参数配置(快捷键 Ctrl+G)。
步骤 2:配置 Siemens S7-200/300/400 驱动
在 Factory IO 驱动配置界面选择 Siemens S7-200/300/400 驱动,主要参数如下:
- Host(主机 IP):填写 PLC 的 IP 地址;
- 网络适配器:下拉列表中包含物理网卡与虚拟网卡(如 VMware)。本案例中实际使用的是 Realtek RTL8852BE WiFi 6 无线网卡,必须选择当前实际联网的物理网卡;
- 数据类型:DWORD;
- I/O 配置:
- 布尔输入:起始 0,数量 9
- 布尔输出:起始 0,数量 15
- 双字输入:起始 100,数量 0
- 双字输出:起始 4,数量 2
以上参数 Factory IO 会依据当前场景给出建议值,配置时逐项核对即可。

驱动配置参数汇总如下表所示:
| 配置项 | 本案例取值 | 说明 |
|---|---|---|
| 驱动类型 | Siemens S7-200/300/400 | 西门子 S7 系列以太网驱动 |
| Host(主机 IP) | 192.168.43.12 | 虚拟 PLC 的 IP 地址 |
| 网络适配器 | Realtek RTL8852BE WiFi 6 | 须选择实际联网的物理网卡 |
| 数据类型 | DWORD | 驱动数据格式 |
| 布尔输入 | 起始 0,数量 9 | 对应 V 区传感器信号 |
| 布尔输出 | 起始 0,数量 15 | 对应 Q 区执行器信号 |
| 双字输入 | 起始 100,数量 0 | 本场景未使用 |
| 双字输出 | 起始 4,数量 2 | 本场景使用 2 个双字输出 |
步骤 3:建立连接与故障排查
单击 Connect 后,本案例首次连接失败,错误提示给出两类可能原因:
1.原因一:PLC 的 IP 地址被误配置为网络适配器地址(网卡选择错误); 原因二:PLC 与计算机不在同一网络(IP 网段不一致)。
排查过程:打开 Windows 设置 → 网络和 Internet → WLAN,查看本机网络参数:
- PC IP 地址:
192.168.43.112 - 默认网关:
192.168.43.1
对照后发现 Factory IO 中填写的 Host 与虚拟 PLC 实际地址不符,将其修改为 192.168.43.12 后重新连接,连接成功。驱动面板显示绿色对勾,并出现"断开连接 / 配置 / 导出"三个功能按钮。
该故障的通用排查顺序为:确认本机 IP 与网段 → 核实 PLC 侧 IP 是否同网段 → 检查网络适配器选择是否正确。掌握该流程可解决绝大多数 Factory IO 连接失败问题。
常见连接故障排查对照表如下:
| 故障现象 | 可能原因 | 排查/解决方法 |
|---|---|---|
| 点击 Connect 弹出连接失败 | Host IP 与 PLC 不在同一网段 | 查看 WLAN 设置中本机 IP 与网关,核对 PLC 实际地址并修改 Host |
| 点击 Connect 弹出连接失败 | 网络适配器选择错误 | 下拉列表中选择实际联网的物理网卡(勿选 VMware 等虚拟网卡) |
| 连接成功但设备无响应 | 程序地址与场景地址不一致 | 重新导出 Tags CSV,逐项核对梯形图中的地址 |
| 连接成功但设备无响应 | 仿真 PLC 未处于 RUN 状态 | 打开仿真软件,将 PLC 切换至 RUN |
| 连接时断时续 | 网络不稳定 / IP 冲突 | 检查热点信号,确认网段内无重复 IP |
步骤 4:导出标签(Tags)并分析地址映射
连接成功后单击驱动面板中的导出按钮,Factory IO 生成 CSV 文件(本案例文件名形如 Tags_Production_Line_Siemens S7-200_300_400_*.csv)。用 WPS 表格打开后即可获得场景中每个设备对应的 PLC 地址。

执行器控制信号(Output,对应 PLC 的 Q 区):
| 设备 | 地址 |
|---|---|
| 传送带 1 | Q0.0 |
| 开始 1 | Q0.2 |
| 复位 1 | Q0.3 |
| 停止 1 | Q0.4 |
| 传送带 11 | Q0.5 |
| 传送带 21 | Q0.6 |
| 传送带 2 | Q0.7 |
| 开始 2 | Q1.1 |
| 复位 2 | Q1.2 |
| 停止 2 | Q1.3 |
| 传送带 12 | Q1.4 |
| 传送带 22 | Q1.5 |
| 传送带 3 | Q1.6 |
步骤 5:编写梯形图程序
打开 STEP 7-Micro/WIN,新建项目(本案例为"项目 1"),CPU 型号选择 CPU 221 REL 01.10。建议先在符号表中按 CSV 映射关系定义符号名(如 V0.0 = 入料口1、Q0.0 = 传送带1),使梯形图以符号名显示,提高程序可读性。
网络 1:零件检测 → 启动传送带 1
入料口1 (V0.0) ──┤├──────────( S ) 传送带1 (Q0.0)
当入料口 1 传感器检测到零件(V0.0 接通)时,对传送带 1(Q0.0)执行置位(S)操作,传送带启动并保持运行。
网络 2:零件检测 → 延时后启动"开始 1"
入料口1 (V0.0) ──┤├──────────[ TON T200, PT: 200(时基 100ms)]
│
└─────────( S ) 开始1 (Q0.2)
V0.0 接通后,接通延时定时器 T200 开始计时;时基为 100ms、预设值 PT 为 200,实际延时为 200 × 100ms = 20s。计时结束后,对"开始 1"(Q0.2)执行置位。
关于 TON 指令的原理:TON 为接通延时定时器,输入条件接通后开始累计时间,达到预设值 PT 后输出置 ON。需注意实际延时 = 时基 × 预设值,不能将 PT 直接视为秒数。
梯形图程序网络:
| 网络号 | 触发条件(触点) | 输出动作 | 功能说明 |
|---|---|---|---|
| 网络 1 | 入料口1 V0.0 | 置位 传送带1 Q0.0 | 检测到零件后启动传送带 1 |
| 网络 2 | 入料口1 V0.0 | TON T200 → 置位 开始1 Q0.2 | 延时 20s 后启动工段 1 |
| 网络 5 | 入料口1 等中间信号 | 传送带11 Q0.5、传送带21 Q0.6 | 工段 1 内部分段输送 |
| 网络 6 | 中间信号 | 传送带2 Q0.7、传送带3 Q1.0 | 后续工段输送控制 |

后续网络 5、网络 6 中还涉及传送带11(Q0.5)、传送带21(Q0.6)、传送带2(Q0.7)、传送带3(Q1.0)等输出点,控制思路一致:以传感器信号为触发条件,经必要的逻辑判断或延时后,置位对应的传送带或启动信号。程序编写完成后下载至仿真 PLC。
步骤 6:运行仿真验证
- 打开 S7-200Smart 仿真软件 V3.0.11.1,加载已下载的程序;
- 将仿真 PLC 切换至 RUN 状态;
- 切回 Factory IO,确认驱动状态为已连接后运行场景。
运行结果:零件由入料口进入后,传送带 1 按程序启动,物料依次经过加工、搬运与分拣环节,分拣台上可观察到蓝色零件的输送过程,仿真计时器正常走时,整条产线按照梯形图逻辑稳定运行。

四、常见问题与经验总结
| 序号 | 问题类别 | 关键要点 |
|---|---|---|
| 1 | 网络通信 | 连接失败优先排查 Host IP、网段一致性与网卡选择 |
| 2 | 网络适配器 | 必须选择实际联网的物理网卡,勿选 VMware 等虚拟适配器 |
| 3 | 编程顺序 | 先导出地址映射表、理解 I/O 分配,再编写梯形图 |
| 4 | 地址规范 | Input 对应 V 区(传感器),Output 对应 Q 区(执行器) |
| 5 | 定时器参数 | TON 实际延时 = 时基 × 预设值,须同时核对两项数值 |
| 6 | 调试顺序 | 下载程序 → PLC 切 RUN → 运行 Factory IO 场景 |
各条要点的详细说明如下:
-
连接失败优先排查网络配置 Factory IO 与 PLC 的通信基于网络。本案例首次连接失败即为 Host IP 填写错误,修正为
192.168.43.12后连接成功。遇到连接失败时不应首先怀疑软件本身,而应依次检查 IP、网段与网卡选择。 -
网络适配器必须选择实际联网的物理网卡 驱动配置的下拉列表中存在 VMware、蓝牙等虚拟适配器,误选后将无法建立通信。本案例实际使用 Realtek RTL8852BE WiFi 6 无线网卡。
-
先导出地址映射表,再编写程序 编程前应先导出 Tags CSV 并完整理解 Input/Output 地址分配。凭主观假设编写地址是初学者的常见错误,其特点是程序逻辑本身无异常,但设备不动作,排查困难。
-
正确区分 V 区与 Q 区 S7-200 中 Input Bool 对应 V 区(传感器反馈),Output Bool 对应 Q 区(执行器控制)。梯形图中传感器使用常开触点
┤├,执行器使用置位线圈(S)或普通输出线圈( )。 -
TON 定时器的实际延时 = 时基 × 预设值 本案例中 T200 时基 100ms、PT 200,实际延时 20s。设定延时参数时应同时核对两项数值。
-
仿真操作顺序 正确顺序为:编写并下载梯形图 → 仿真 PLC 切换至 RUN → 运行 Factory IO 场景。顺序颠倒会导致程序运行但现场设备无响应的现象。
五、结语
本案例覆盖了 仿真建模、通信配置、网络排查、地址映射与梯形图编程的完整调试流程,与实际工程项目的实施方法基本一致,仅以软件仿真替代硬件设备。对于在校学生而言,熟练掌握该流程有助于后续快速过渡到真实 PLC 项目的开发与调试。
建议读者在理解原理的基础上独立复现全部步骤,重点体会连接失败的网络排查过程——该环节在工程实践中出现频率极高,在校期间积累排查经验的学习成本最低。
如本文对你有所帮助,欢迎点赞收藏,欢迎在评论区交流讨论。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)