跳到主要内容

初始化与事件绑定

该案例按“模型事件写请求/反馈 → PLC 更新输出 → 调用一次 PLC扫描 → 改变模型属性”执行。原脚本明确要求不创建周期扫描任务。

核对绑定​

操作位置应检查的脚本或字段预期与证据范围
场景初始化脚本组启动外部PLC → PLC初始化原场景脚本文本已确认此调用关系
PLC演示起点 的 InCtrlPLC请求首段静态属性已返回此绑定;生成物料时写首段请求
输送线252/251/250 的末端事件PLC输送到位脚本按当前对象名称分支;完整末端槽位绑定尚需编辑器回读,不自动推断槽名
PLC初始化 脚本内的堆垛机绑定PickFinishCtrl = &PLC货叉收回原初始化代码显式赋值;取货完成反馈
同上PutFinishCtrl = &PLC堆垛机到位放货完成后写行走/升降到位
同上TaskFinishCtrl = &PLC任务完成清到位、有货反馈并累计完成数
场景结束脚本组停止外部PLC → PLC停机文本已确认;界面何种停止动作触发结束脚本还需实测

&脚本名 是把脚本对象绑定给回调,单独脚本名表示执行脚本。? 为当前执行对象,@ 为当前对象的 Cont;无载荷时不能假定 @ 非空。

初始化预期​

PLC初始化 开启日志,将 PLC_TaskCount、PLC_CompletedCount 清零,PLC_LastCommand 清空,PLC_Error=false;停止三段输送线,配置堆垛机三个回调,注册点位,然后连接并尝试复位请求与反馈,最后断开。

初始化连接失败时会记录异常并返回;不要继续把它当作成功初始化。已打印的复位消息也要结合 PLC 侧读回判定。

单次扫描预期​

PLC扫描 顺序读取三个正转点位。任一返回 null 就进入异常处理;读到 false 与读失败不是一回事。只有命令组合变化才更新 Stopped 和日志,减少无意义重复处理。

扫描异常时停止三段输送线、设置 PLC_Error、清空 PLC_LastCommand,并在起点 Description 写入错误;finally 断开。下一次恢复仍依赖后续明确触发的模型事件,不能假设自动定时重试。

下一步:复验一次完整入库。