回复:0103 【万泉河】PLC程序块INOUT管脚的倒置用法

已锁定

手机用户20221224

  • 帖子

    3
  • 精华

    0
  • 被关注

    1

论坛等级:游士

注册时间:2022-12-20

普通 普通 如何晋级?

发布于 2025-02-20 20:55:06

65楼

您所谓的“模块化”与“标准化”,本质上是一场自欺欺人的技术狂欢。
您一边痛骂全局变量是洪水猛兽,一边又用“倒置INOUT”这种旁门左道强行缝合代码,最终不过是把全局变量换了个马甲,还额外附赠了一堆技术债。
以下逐条撕开您的逻辑漏洞:

1. 接口简化?不过是“拆东墙补西墙”的障眼法

您声称通过“倒置调用”减少FB接口,实则将复杂度转嫁到隐藏的FC层。
用户原本只需面对一个FB的管脚,现在却要额外维护一个FC的INOUT参数,甚至需要记住“同一周期内调用两次”的奇葩规则。
结论:这不是简化,而是把“屎山代码”从客厅搬进了地下室,还贴上了“高级设计”的标签。

2. 用户友好性?分明是“用户迷惑性”

您批判FB接口臃肿像“插满糖葫芦的稻草人”,但您的方案更胜一筹——用户需要先破解“二次调用”的玄学逻辑,再揣摩隐藏参数的来龙去脉。
试问:当某个参数值被意外篡改时,是翻遍FC的INOUT更快,还是直接搜索全局DB更高效?
结论:用户宁愿面对明确的“糖葫芦”,也不愿掉进您精心设计的“逻辑黑洞”。

3. 性能与可靠性?同一周期两次调用等同埋雷

PLC的扫描周期是实时控制的生命线,而您要求“同一周期内两次调用”以实现参数传递,无异于在心脏上插两刀。

第一次调用:写入参数;

第二次调用:读取参数。
若因程序逻辑或硬件延迟导致两次调用未能严格同步,轻则数据错乱,重则系统崩溃。
结论:这不是编程技巧,而是定时炸弹的装配指南。

4. 标准化?您的方案连“草台班子”都算不上

IEC 61131-3标准明确提倡通过FB参数化和局部静态变量实现模块化,而非您这种“用FC的INOUT模拟全局变量”的野路子。
您将共享参数硬塞进FC的INOUT,本质仍是全局变量的变种,却放弃了DB的结构化管理优势(如自动版本控制、数据类型校验)。
结论:您所谓的“标准化”,不过是把行业规范踩在脚下,再自封为“创新教主”。

5. 维护与扩展?一场灾难的预告片

您提到“80个模拟量通道自动辨别类型”,但若按您的方案实现,后续新增一种变送器类型时:

需要修改所有相关FC的INOUT参数列表;

重新验证所有隐藏参数的传递链路;

祈祷没有遗漏某个“倒置调用”的角落。
而使用全局DB或结构体,只需修改一处定义,编译时自动同步。
结论:您的方案不是在解决问题,而是在为未来的自己培养“加班文化”。

6. 书籍与行业影响?误人子弟的“毒鸡汤”

您在书中鼓吹“隐藏管脚”和“倒置调用”,美其名曰“高内聚低耦合”,实则是在教读者如何用奇技淫巧掩盖设计能力的匮乏。
若真将此方法推广到工业现场,轻则被运维工程师追杀,重则因隐性BUG导致产线瘫痪。
结论:您不是在写技术书籍,而是在为PLC编程界批量生产“技术债”的军火商。

最后忠告

模块化的核心是逻辑清晰与管理便捷,而非强行消灭全局变量或堆砌接口魔术。
若真想“标准化”,请先学会尊重行业规范,而不是用“倒置调用”这种脱裤子放屁的伎俩,把简单问题复杂化。
真正的工程师,解决问题靠的是设计能力,不是缝合技巧。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8945条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。