基于 Factory I/O 与 S7-200 的机器人搬运—加工—传送—分拣仿真
一、项目概述
1.1 仿真目标
这条线的任务是把“毛坯上料—机器人搬运—加工中心加工—成品输送—按类型分拣—计数统计”串成一个可循环运行的自动化流程。仿真不是简单让画面动起来,而是要满足三点:设备动作由 PLC 输出驱动而不是手工强制;每个动作都有明确的触发条件和互锁;出现异常(缺料、停机、复位)时能回到确定状态。
因此整套系统分三层:场景层(Factory I/O 里的三维设备与传感器)、控制层(S7-200 的梯形图程序)、执行层(机器人动作与加工中心门控)。三层之间只通过 I/O 变量交换信息,任何一层都可以单独调试。
1.2 工艺流程
上料:毛坯在入料口生成,入料光电检测到工件后启动本单元的输送线。
搬运:工件到达取料位,机器人从料台取件,送入加工中心指定位置后退出。
加工:加工中心关门并执行加工,加工完成后开门,给出完成信号。
下料:机器人取出成品,放到出料输送线上,工件流入主输送线。
分拣:工件经过分拣位,按类型(底座/盖子)由顶升轮分拣机推入左或右滑道。
计数:出料口光电每检测一件累加一次,计数值送 Factory I/O 的计数器显示,达到批次数量后停止上料。
1.3 软件与运行环境
表 1 软件环境与分工
|
软件/设备 |
版本或型号 |
在本项目中的作用 |
|
Factory I/O |
2.x(2025 版界面) |
搭建三维场景、设备模型、传感器与执行器,提供驱动接口 |
|
STEP 7-Micro/WIN |
V4.0(CPU 221 REL 01.10) |
编写 S7-200 梯形图程序、符号表与交叉引用 |
|
S7-200 SMART PLC 仿真软件 |
5.0.11(教学版) |
在没有真实 PLC 的情况下模拟 CPU 运行程序 |
|
机器人仿真软件 |
课程所用软件(COSAI/COSIMIR 类) |
完成机器人取放料轨迹示教与动作时序 |
|
Excel |
— |
整理 I/O 变量表(Tags_加工分拣_Siemens S7) |
|
通信方式 |
以太网(S7 协议) |
Factory I/O 驱动与仿真 PLC 之间交换 I/O 数据 |
二、Factory I/O 场景搭建
2.1 从场景库选择起点
Factory I/O 启动后进入“打开场景”页,左侧是“学习场景 / 场景”两个分类,右侧是内置场景的缩略图列表(图 1)。列表中的 1-From A to B、4-Queue of Items (Counters)、Palletizer、Sorting by Height、Sorting Station 等场景,分别演示了输送、缓存计数、码垛、按高度分拣等单一功能,适合作为搭建整线时的零件来源。

图 1 Factory I/O 场景库(打开场景页)
2.2 搭建场景
选择双轴机械臂场景,并从左侧插入重量传感器组件和传送带等组件。
图 2 两套机器人加工单元与输送分拣线的整体布局
2.3命名与传感器、执行器配置
Factory I/O 中的组件名称就是 PLC 的变量名,命名必须在连线之前定好。规则建议为:输送线用“传送带 + 编号”(传送带1、传送带2、传送带3、传送带11、传送带21、传送带12、传送带22),检测点用“入料口/出料口 + 编号”,工位用“Lids center / Bases center”,分拣方向用“Sorter Left / Sorter Right”,加工中心用“Machining Center 1/2 (Open、Progress)”。

图 3 场景局部视图与左侧标签列表(传感器、执行器与中文标签)
图 3 左侧的标签列表就是这一场景的 I/O 清单:Bases center (busy)、Lids center (busy) 表示工位忙闲,Bases counter、Lids counter 是计数器,Belt Conveyor(s)、Lid Conveyor 是输送线,Machining Center 1/2 的 (Open)、(Progress) 分别表示门开与加工中,Pop-Up Wheel Sorter 1 (Left)、Pop-Up Wheel Sorter (Right) 是两个分拣方向。视图里还能看到“传送带1”“出料口1”“入料口1”“停止”“正转”等中文标签,说明场景已按中文命名,便于与梯形图符号表一一对应。
三、I/O 变量规划与通信配置
3.1 变量表
变量表先整理成 Excel,再分别导入 Factory I/O 的标签名与 STEP 7 的符号表,保证三处名称、地址完全一致。表 2 是按项目实际工程整理的变量清单(对应图 7 的 Excel 表)。
表 2 I/O 变量与地址分配(据 Excel 变量表整理)
|
名称 |
类型 |
数据类型 |
地址 |
作用 |
|
入料口1 |
Input |
Bool |
V0.0 |
1 号单元入料光电,检测到毛坯 |
|
Lids center |
Input |
Bool |
V0.1 |
盖子工位工件到位/忙闲 |
|
Lids center |
Input |
Bool |
V0.2 |
盖子工位第二检测点 |
|
出料口1 |
Input |
Bool |
V0.3 |
1 号单元出料光电,用于计数 |
|
入料口2 |
Input |
Bool |
V0.4 |
2 号单元入料光电 |
|
Bases center |
Input |
Bool |
V0.5 |
底座工位工件到位/忙闲 |
|
Bases center |
Input |
Bool |
V0.6 |
底座工位第二检测点 |
|
出料口2 |
Input |
Bool |
V0.7 |
2 号单元出料光电 |
|
FACTORY I/O |
Input |
Bool |
V1.0 |
场景运行/联机标志,用于总联锁 |
|
传送带1 |
Output |
Bool |
Q0.0 |
1 号单元主线启停 |
|
Lids center |
Output |
Bool |
Q0.1 |
盖子工位动作(产出/放行) |
|
开始1 |
Output |
Bool |
Q0.2 |
1 号机器人启动 |
|
复位1 |
Output |
Bool |
Q0.3 |
1 号单元复位 |
|
停止1 |
Output |
Bool |
Q0.4 |
1 号单元停止 |
|
传送带11 / 传送带21 |
Output |
Bool |
Q0.5 / Q0.6 |
1 号单元分支输送线 |
|
传送带2 |
Output |
Bool |
Q0.7 |
1 号单元取料线 |
|
Bases center |
Output |
Bool |
Q1.0 |
底座工位动作(产出/放行) |
|
开始2 |
Output |
Bool |
Q1.1 |
2 号机器人启动 |
|
复位2 |
Output |
Bool |
Q1.2 |
2 号单元复位 |
|
停止2 |
Output |
Bool |
Q1.3 |
2 号单元停止 |
|
传送带12 / 传送带22 |
Output |
Bool |
Q1.4 / Q1.5 |
2 号单元分支输送线 |
|
传送带3 |
Output |
Bool |
Q1.6 |
分拣主线启停 |
|
Lids counter |
Output |
DInt |
QD4 |
盖子计数,送 Factory I/O 显示 |
|
Bases counter |
Output |
DInt |
QD8 |
底座计数,送 Factory I/O 显示 |

图 7 Excel 中的变量表:名称、类型、数据类型与地址
这张 Excel 表是整套工程的“总账”:Factory I/O 的标签名、STEP 7 的符号名、Excel 的地址列三者必须完全对应。建议在表里再加一列“备注”,写清每个点的物理位置(如“1 号单元入料光电,安装高度 0.4 m”),联调时找点会快很多。
3.2 驱动配置与标签映射
在 Factory I/O 中打开“文件→驱动”,左侧列表选择 Siemens S7-200/300/400 驱动;本项目使用 S7-200,因此选这一项而不是 S7-1200/1500。
驱动窗口左侧是 Factory I/O 的标签,右侧是 PLC 地址;按变量表逐条填写,%I 区对应 PLC 输入,%Q 区对应输出,双字计数用 %QD 区。
映射完成后点击“连接”,标签前的圆点变绿表示通信正常;灰点表示未连接,红点表示地址冲突或通信失败。
如出现地址冲突,先检查是否有两个标签占了同一地址,再检查 Factory I/O 场景内是否有重名标签。

图 4 驱动配置界面:Factory I/O 标签与 PLC 地址的映射
图 4 中可以清楚看到映射关系:%I0.0 对应“入料口1”、%Q0.0 对应“传送带1”,右侧“执行器”列表里的 Bases center (produce lid)、Belt Conveyor(s)、Lid Conveyor、Machining Center 1/2 (Open/Close) 等,正是被 PLC 输出驱动的设备。映射表就是 PLC 与三维场景之间的“接线图”,一张表填错一个位,现场就会有一个设备不动。
3.3 Factory I/O 侧的通信参数
打开“文件→配置”,选择 PLC 类型 S7-200;主机地址填写仿真 PLC 的 IP(如 192.168.43.131),与电脑网卡处于同一网段。
I/O 配置选择 DWORD(按双字批量交换),输入/输出点数按实际变量数量填写;本项目实际使用 9 个输入位与 15 个输出位,双字用于两个计数器。
网卡选择实际连接的那块(如 Intel(R) Wi-Fi 6 AX211 160MHz),多网卡时选错会连不上。
保存配置后重新连接,确认驱动界面的连接状态为绿色。

图 5 Factory I/O 的 PLC 配置:S7-200、IP 地址与 I/O 数量
3.4 仿真 PLC 的通信设置
启动 S7-200 SMART PLC 仿真软件(教学版 5.0.11),在“设置→端口设置”中配置通信口。
PORTO 设为从站:站地址 2、串口 COM1、通信速率 9600、PPI 协议,通信参数 9600, E, 8, 1。
PORT1 设为主站:站地址 1、串口 COM2、9600,超时 10,作为与上位/驱动的链路。
勾选 CP243-1 以太网模块,IP 设为“所有本地 IP”或固定为 自己设置里的IP地址,与 Factory I/O 驱动中的主机地址保持一致。
端口设置完成后关闭对话框,把仿真 PLC 置为 RUN 状态,确认 RUN 灯亮、STOP 灯灭。

图 6 S7-200 SMART 仿真软件的端口设置(PPI、以太网模块 IP)
仿真 PLC 的作用是替代真实 CPU:STEP 7 里编译好的程序载入仿真软件后,它就像一台真实 S7-200 一样响应 Factory I/O 的读写请求。因此两侧的 IP、站地址、协议必须匹配,任何一项不一致,驱动界面的连接点都不会变绿。
四、STEP 7-Micro/WIN 程序设计
4.1 新建工程与 CPU 设置
打开 STEP 7-Micro/WIN,新建项目,CPU 型号选择与仿真软件一致的型号(截图中为 CPU 221 REL 01.10)。
在项目树中依次确认程序块(Program Block)、符号表(Symbol Table)、状态表(Status Chart)、数据块(Data Block)、系统块(System Block)、交叉引用(Cross Reference)、通信(Communications)七项。
系统块中确认数字输入/输出点数满足变量表需要,必要时扩展模块按实际配置添加。
4.2 符号表
符号表把地址翻译成可读的名称,删除所有英文不用的符号,是梯形图可维护性的关键。表 3 是按图 8 整理的符号表,符号名支持中文,注释列建议写清设备位置与信号含义。
表 3 主要符号与地址(据 STEP 7 符号表整理)
|
符号 |
地址 |
用途 |
|
入料口1 / 出料口1 |
V0.0 / V0.3 |
1 号单元入料、出料检测 |
|
入料口2 / 出料口2 |
V0.4 / V0.7 |
2 号单元入料、出料检测 |
|
传送带1 / 传送带2 |
Q0.0 / Q0.7 |
1 号单元主线、取料线 |
|
传送带11 / 传送带21 |
Q0.5 / Q0.6 |
1 号单元两条分支线 |
|
传送带12 / 传送带22 |
Q1.4 / Q1.5 |
2 号单元两条分支线 |
|
传送带3 |
Q1.6 |
分拣主线 |
|
开始1 / 开始2 |
Q0.2 / Q1.1 |
两台机器人启动信号 |
|
复位1 / 复位2 |
Q0.3 / Q1.2 |
两个单元复位 |
|
停止1 / 停止2 |
Q0.4 / Q1.3 |
两个单元停止 |

图 8 STEP 7-Micro/WIN 符号表:中文符号、绝对地址与注释
4.3 程序段 解析
图 9 是程序网络


图 9 梯形图 Network 1—5
Network 1:入料口1(V0.0)的常开触点直接驱动两个置位线圈,分别置位传送带1(Q0.0)和传送带2(Q0.7)。含义是入料光电一检测到毛坯,本单元的主线与取料线同时启动,把工件送到机器人取料位。这里用 S(置位)而不是直接输出,是为了让输送线在工件离开光电后仍保持运行,直到到位信号把它复位。
Network 2:入料口1 的常闭触点接 TON 定时器 T200,PT 设为 200。截图标注 T200 的时基为 100 ms,因此延时为 200×100 ms=20 s;定时器到达后取上升沿(EU),置位“开始1”(Q0.2),通知 1 号机器人启动。用常闭触点,是因为工件离开入料口后光电变 0,此时才开始计时,等于给工件留出从入料口走到取料位的时间。
Network 3:结构与 Network 2 相同,入料口1 常闭触点接 TON T100,PT 设为 100,截图中 T100 的时基为 10 ms,延时为 100×10 ms=1 s;到位后取上升沿置位“开始2”(Q1.1),启动 2 号机器人。两台机器人用不同的延时,是为了错开节拍,避免同时动作造成输送线拥堵。
对应的语句表如下(与梯形图逐行对应,可直接在 STEP 7 中切换查看):
Network 1
LD V0.0
S Q0.0, 1
S Q0.7, 1
Network 2
LDN V0.0
TON T200, 200
LD T200
EU
S Q0.2, 1
Network 3
LDN V0.0
TON T100, 100
LD T100
EU
S Q1.1, 1
需要说明的是,20 s 的延时对演示节拍偏长,若工件从入料口到取料位只需几秒,可把 PT 改为 20(2 s);改完后要同步观察机器人与输送线的衔接,避免机器人在工件未到位时就开始取件。
4.4 完整程序段划分
前三个网络只是入口逻辑,整线要跑通还需要停线、门控、出料、分拣、计数、复位几段。表 4 是推荐的程序段划分,每一段只负责一件事,便于单独调试。
表 4 程序段划分与功能
|
程序段 |
功能 |
核心指令 |
触发条件与结果 |
|
Network 1 |
入料启动 |
LD / S |
入料口检测到工件,置位主线与取料线 |
|
Network 2、3 |
延时启动机器人 |
TON / EU / S |
工件离开入料口后延时,分别置位开始1、开始2 |
|
Network 4 |
到位停线 |
LD / O / R |
工位光电检测到工件,复位对应输送线 |
|
Network 5 |
加工中心门控 |
LD / = |
机器人到位后给出开门/关门信号,加工中保持关门 |
|
Network 6 |
加工完成出料 |
LD / S |
Progress 结束且门开,置位出料线与分拣主线 |
|
Network 7 |
分拣判断 |
LD / A / AN / S / R |
按工件类型置位左或右分拣输出,离开后复位 |
|
Network 8 |
计数 |
EU / CTU 或 +D |
出料口每来一件累加,结果 MOV 到 QD4、QD8 |
|
Network 9 |
停止与复位 |
LD / R |
停止信号复位全部输出;复位信号清计数器与状态位 |
|
Network 10 |
首扫描初始化 |
LD SM0.1 / R |
上电第一周期清零状态,防止残留输出 |
4.5 编译与下载
程序写完后先“编译”,检查是否有语法错误与未定义符号;编译通过后再下载,避免把错误程序装入仿真 PLC。
在 STEP 7 中执行“PLC→下载”,或在仿真软件中“文件→打开程序”,选择编译生成的程序文件(截图中文件类型为 awl)。
下载完成后把仿真 PLC 置 RUN,用状态表监控 V0.0、Q0.0、Q0.2 等关键位,确认程序确实在运行。

图 10 在仿真软件中打开并装载编译好的程序文件
五、机器人搬运与加工中心逻辑
5.1 两台机器人的分工
两台机器人各自服务一套加工单元,动作顺序一致:从料台取毛坯、送入加工中心、退出到安全位、等待加工完成、再进入取成品、放到出料线。左右单元的差别只在取放点和信号编号(开始1/开始2、复位1/复位2),程序结构可以共用一套模板。
机器人轨迹在机器人仿真软件中示教:取料点、加工中心内的放料点、安全过渡点、成品取出点、出料线放料点,每个点都记录位置与姿态,保证工具垂直于工件表面。空行程用关节运动(快速定位),接近与放入段用直线运动(保证不撞夹具与门框)。
5.2 与 PLC 的握手信号
PLC 输出“开始i”(Q0.2 / Q1.1)置位后,机器人程序开始执行一轮取放;机器人侧检测到该信号上升沿后启动主程序。
机器人到达取料位、放料位时,通过 I/O 或中间标志回送“到位/忙”信号,PLC 据此决定是否停线、是否允许下一件工件进入。
加工中心关门后给出“加工中(Progress)”,加工结束时该信号撤销,PLC 再发“开门”,机器人才能进入取件。
一个循环结束后机器人回送“完成”,PLC 复位“开始i”,等待下一件的到位信号,形成“一件一启动”的节拍,避免连续启动导致机器人重复取件。
5.3 互锁与安全
· 门联锁:加工中心门未开到位时,机器人不得进入;机器人在加工中心内时,门不得关闭。
· 工位互锁:取料位有件且输送线已停,才允许取件;取件未完成时不允许下一件进入同一工位。
· 单元互锁:一套单元故障停机时,另一套单元可继续运行,但不得向同一主线出料,防止主线拥堵。
· 安全回路:围栏门、急停按钮串入停止逻辑,急停时复位全部输出并停止机器人,恢复后必须手动复位才能再启动。
六、传送带运动与分拣逻辑
6.1 传送带的启停与方向
Factory I/O 中的每条输送线都是一个执行器,对应 PLC 的一个输出位(表 2 中的 Q0.0、Q0.5—Q0.7、Q1.4—Q1.6)。输出为 1 时皮带正转,为 0 时停止;需要双向运行的段还要占用一个“反转”输出。因此传送带的控制本质上就是“什么时候置位、什么时候复位”,而不是靠仿真界面上手动点击运行。
推荐的启停规则是:入料检测到位就置位(S),工位到位或下游满料就复位(R),停止按钮复位全部输送线输出。置位与复位分开写,可以避免“工件一离开光电、皮带就停”的问题;如果直接用光电触点驱动线圈,工件离开检测区的瞬间皮带就会停,工件根本走不到下一工位。
Network 4 到位停线
LD V0.1 // 盖子工位到位
O V0.5 // 底座工位到位
R Q0.0, 1 // 停 1 号单元主线
R Q0.7, 1 // 停取料线
6.2 到位检测与节拍
光电传感器安装在三处:入料口(判断有件上料)、取料位/工位(判断可搬运)、出料口与分拣位(判断可出料、可计数)。检测信号的上升沿代表“工件到达”,下降沿代表“工件离开”,程序中应取上升沿做动作触发,取下降沿做状态复位,避免信号抖动造成重复触发。
节拍上要注意两点:一是输送线停止后要留 0.2~0.5 s 的稳定时间再允许机器人取件,防止工件因惯性继续滑动;二是下一件工件必须等前一件离开取料位后才放行,可通过“取料位空闲 + 下游允许”两个条件相与实现。
6.3 分拣机构的工作原理
顶升轮分拣机(Pop-Up Wheel Sorter)安装在主线中段,平时滚轮低于皮带面,工件直行;当需要分拣时,滚轮组顶起并横向转动,把工件斜向推入侧面的滑道。它有两个方向输出:Left 与 Right,分别对应左右两条滑道;两个输出同时为 0 时不起作用,工件继续直行。
两台分拣机串联时,第一台负责第一类工件,第二台负责第二类工件,形成两级分拣:第一类工件在第一台被推向左滑道,第二类继续直行到第二台再推向右滑道。这样只需两台设备就能把两种工件分开,且不会互相干扰。
6.4 分拣判断条件
分拣的“判断依据”必须来自传感器或工艺信息,常用三类:工件类型(底座/盖子,由上游工位或产生标签决定)、几何尺寸(高度传感器区分高件/矮件)、检测结果(合格/不合格,由检测工位给出)。本项目按类型分拣,判断表如下。
表 5 两级分拣的判断与动作
|
工件类型 |
识别信号 |
分拣动作 |
去向 |
|
底座(Bases) |
Bases center 到位且类型标志为 1 |
置位 Sorter Left,延时 1 s 后复位 |
左滑道,底座收集框 |
|
盖子(Lids) |
Lids center 到位且类型标志为 0 |
置位 Sorter Right,延时 1 s 后复位 |
右滑道,盖子收集框 |
|
未识别/异常件 |
两个类型标志均为 0 或同时为 1 |
不动作,工件直行到末端收集框 |
末端废料框,人工确认 |
程序实现的关键是“到位沿触发 + 定时复位”:用分拣位光电的上升沿判断工件已到分拣机上方,再根据类型置位对应方向输出;输出保持约 1 s(用 TON 定时器),等工件完全进入滑道后复位,防止工件还没推出去输出就撤销。若使用高度或重量传感器,只需把“类型标志”换成传感器比较结果,分拣动作不变。
Network 7 分拣判断(示例,地址按实际标签替换)
LD V0.3 // 分拣位光电,工件到达
EU
A M1.0 // 类型标志:1=底座
S <Sorter Left>, 1
LD V0.3
EU
AN M1.0
S <Sorter Right>, 1
LD V0.3 // 工件离开后复位方向输出
ED
R <Sorter Left>, 1
R <Sorter Right>, 1
6.5 计数与批次完成
计数用出料口光电的上升沿触发累加,底座与盖子各一路:底座计数送 QD8,盖子计数送 QD4,Factory I/O 中的 Bases counter、Lids counter 直接显示这两个值。累加可用整数加法指令(+I/+D)或计数器指令(CTU),前者便于把数值直接送到双字输出,后者便于设定批次值。
批次完成判断:把当前计数值与设定值(如 100 件)比较,达到后置位“批次完成”标志,停止上料与主线,等待人工确认或自动复位。复位时把计数值清零、方向输出复位、机器人回原点,保证下一批从确定状态开始。注意清零只由复位按钮或首扫描(SM0.1)触发,不要在每件计数时清零。
6.6 重量传感器用法
调试阶段可以用 Factory I/O 的强制功能临时把某个输出置 1,用来验证“这条皮带接线对不对、这个分拣方向动不动”。但强制只是排查手段,不能作为运行方式:强制值不经过程序,停止强制后输出立即回 0,到位停线、分拣判断、计数累计这些逻辑都不会执行,演示时画面虽然在动,实际工艺是断的。
把强制改成程序驱动只需三步:一是为每条输送线写“置位/复位”两段,而不是手动开关;二是把传感器状态接入这两段的触发条件,让皮带能自己停;三是把分拣方向输出接到类型判断与定时复位上。完成这三步后,去掉全部强制,整线仍能自动循环,这才是可交付的仿真状态。
七、联调与运行
7.1 启动顺序
先打开 Factory I/O 场景,确认布局、标签、驱动配置无误,但先不要点运行。
启动 S7-200 仿真软件,装载程序并置 RUN,确认 RUN 灯亮。
回到 Factory I/O 打开驱动,点击连接,确认标签前圆点全部变绿。
在仿真 PLC 中先给一次复位(Q0.3/Q1.2),清除残留状态与计数,再点 Factory I/O 的运行。
观察入料口是否出件、输送线是否启动、机器人是否按开始信号动作,逐段确认后再放开整线连续运行。
7.2 分步测试方法
· 单点测试:在状态表中强制/置位单个输出(如 Q0.0),看对应皮带是否转动,确认地址映射正确。
· 单段测试:只放一件工件,观察从入料到取料的完整链路,确认停线位置与延时是否合适。
· 单元测试:让一台机器人独立完成取件—加工—放件,确认门控与握手信号时序。
· 整线测试:连续放料,观察主线是否拥堵、分拣是否准确、计数是否与实际件数一致。
· 异常测试:按停止、按复位、拉急停,确认所有输出复位、计数清零、重新启动后能从初始状态恢复。
7.3 最终效果

图 11 联调完成后的整线布局:两套加工单元、主线与两级分拣
图 11 是整线跑通后的俯视效果:左上、左下两套“机器人 + 加工中心 + 围栏”单元对称布置,右侧主线沿水平方向延伸,两个分拣机构串联在中段,末端滑道分别收集两类工件。工件从单元流入主线后被逐级分拣,计数器同步累加,整条线可在无人干预下循环运行。
7.4 常见问题与排查
表 6 常见问题与处理
|
现象 |
可能原因 |
处理办法 |
|
驱动连不上、圆点不变绿 |
IP 不同网段;仿真 PLC 未运行;网卡选错 |
核对 192.168.43.x 网段、置 RUN、改选实际网卡 |
|
标签有信号但设备不动 |
映射地址错位;I/O 数量配置不符 |
逐条核对 %I/%Q 地址与 I/O 计数 |
|
输送线一转就停 |
用光电触点直接驱动线圈,工件离开即失电 |
改为置位/复位两段控制 |
|
工件走不到下一工位 |
光电安装高度不对、皮带速度过低 |
调整传感器高度与皮带速度 |
|
分拣不动作或推不出去 |
方向输出地址错;输出保持时间太短 |
核对标签;用定时器保持 1 s 以上 |
|
计数不增加或乱跳 |
未取上升沿;清零段误触发 |
加 EU 指令;清零只在复位/首扫描执行 |
|
机器人不启动 |
开始信号未置位、极性反、机器人侧未运行 |
监控 Q0.2/Q1.1,检查机器人程序与握手 |
|
仿真 PLC 报错 |
程序文件与 CPU 型号不匹配 |
按实际 CPU 重新编译并装载 |
八、总结
这套仿真的核心不在模型多漂亮,而在“信号链是否闭环”:入料光电触发输送线,到位光电触发机器人,机器人完成信号触发加工中心,加工完成触发出料与分拣,分拣位触发方向输出,出料口触发计数。每一环都有明确的触发源和复位条件,整线才能自动循环。
搭建顺序建议固定为:先场景(设备、传感器、命名),再变量(Excel 总账),再通信(驱动映射、仿真 PLC),最后程序(入口逻辑、单元逻辑、分拣计数、停止复位)。顺序颠倒会出现“设备动了但不知道谁给的信号”的情况,排查成本很高。
可扩展的方向包括:增加高度/重量传感器实现按规格分拣、增加加工中心刀具寿命与故障模拟、用触摸屏(HMI)做人机界面、把两台机器人与主线做成多工位调度。这些扩展都建立在本文已有的 I/O 规划与程序分段之上,只需增加变量和程序段,不必重构场景。
九、B站教学
【FactoryIO/S7-200 Smart.PLC实现两轴机器人加工搬运分拣系列运动】 https://www.bilibili.com/video/BV1PfWo6YEjq/?share_source=copy_web&vd_source=bf4722ab11c281bf855def33f40b0493
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)