gpt4 book ai didi

performance - 成为更好/更高效的 PLC 程序员

转载 作者:行者123 更新时间:2023-12-03 15:17:46 30 4
gpt4 key购买 nike

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。




9年前关闭。




我正在实习/见习的公司主要使用西门子模块进行 PLC 编程。
这是因为大多数人都是电工并转而从事工程工作。

作为新手,我的问题是,当我编写 PLC 软件时,我不能真正高效和快速地编写代码。

即使我在 VS/Eclipse 中编写 C# 或 Java 时效率很高

与“真正的”编程语言相比,我无法真正使用 PLC 来提高工作效率,这真的很烦人。

  • 是缺少代码完成吗?
  • 是自动化方面缺乏整体知识吗?
  • 与 VS(LINQ、Dynamics、Lambda)相比,PLC 缺乏创新吗?

  • 各位大佬有没有用过PLC的?
    你是如何使用它的?

    注意:这是我在公司的最后一年,这也是我想要非常高效的原因。

    期待许多精彩的答案!

    最佳答案

    PLC 编程在几个方面不同于传统的程序编程:

    1)继电器梯形逻辑是一种相当原始的语言。很难有同样的生产力。
    大多数 PLC 程序员不使用子程序;它几乎就像 PLC 世界是
    那个时间和软件工程忘记了。你可以通过申请做得很好
    结果是简单的软件工程方法,例如,定义接口(interface)
    代码块之间,即使是抽象的。

    2) 大部分 PLC 编程都与 bool 方程有关。如果你想成为好人
    在PLC编程,努力处理 bool 逻辑:学习 bool 代数,
    尤其是像德摩根定理这样的东西,用于在 AND 和 OR 之间分布 NOT
    (由于 PLC 通常不提供 NOT 运算符,因此您需要更多
    通常是你所期望的)

    3)了解PLC编程是关于实时控制和反馈。
    大多数标准编程语言(例如 Java)都很难解决这个问题。
    仔细考虑 PLC 代码是驱动输出的逻辑这一事实,
    并且被驱动的机械系统实际上是“逻辑”的
    驱动PLC输入。我经常使用另一个建模机械系统
    PLC,只是为了让我调试我的PLC程序而不需要真正的工厂机器
    控制。这也可以让你模拟失败;见第 6 点。

    4) 大部分 PLC 编程抽象地是关于从状态到状态的转换,
    其中状态代表 PLC 对外部世界的了解,以及转换
    当 PLC 读取外部输入并发现世界状态已
    有所改变。尽可能多地学习有限状态自动机
    和离散系统的监督控制。它会给你丰厚的报酬。

    5) PLC 经常需要记住过去的事件。因此,大部分 PLC 逻辑是
    与设置/重置/测试 bool /数字状态变量和/或计时器有关。因此,虽然 PLC 程序的代码通常看起来像纯逻辑,但实际上它
    有很多副作用,这使得对该程序的推理非常困难。事实上,就像用 C 或 Java 等更现代的语言编写一样难。

    6)注意处理机械故障。大多数 PLC 程序假定
    受控系统如宣传的那样工作;这真是糟糕的做法。在现实世界中,受控
    系统只会像宣传的那样工作,直到它崩溃,它最终总是会这样做。
    如果您包含诊断代码以帮助确定 PLC 程序中的机械故障,则需要更长的时间
    写它们,但用户会爱你,因为没有比这更糟糕的了
    一台坏了的工厂机器,但它不会告诉你如何。停工的工厂
    是一台停止的提款机,工厂经理讨厌它。

    关于performance - 成为更好/更高效的 PLC 程序员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1361396/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com