gpt4 book ai didi

plc - 学习PLC编程

转载 作者:行者123 更新时间:2023-12-03 07:29:00 26 4
gpt4 key购买 nike

很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便可以重新打开,visit the help center .




8年前关闭。




如何学习PLC编程?不同品牌的PLC会不会有很大差异?梯形图编程和PLC编程一样吗?

最佳答案

我做过很多 PLC 编程,现在做了很多 .NET 编程。无论哪种方式进行转换都是非常危险的,因为许多您认为应该可以转移的技能(模式等)会让您误入歧途。

我告诉人们最大的不同是,PC程序代码应该像其他程序员一样编写,而PLC程序(梯形逻辑)必须像维护人员一样编写。大多数设施(尤其是制造业)的维护人员经常直接连接到 PLC,并且在在线模式下,他们可以观察以图形方式执行的代码以找出问题所在。

例如,如果输出未打开,他们会将输出电气设备 ID 输入到编程软件的查找功能中,找到该输出线圈,然后从那里开始追溯以查找问题。一些 PLC 程序员经常犯的错误之一是将他们的 I/O“映射”到一个结构中(在 PLC 中,这些被称为用户定义类型),他们使用复制指令将所有输入或输出移动到一下子结构。从 PC 编程的角度来看是有道理的,但这会让维护人员想杀了你。通常,编程软件提供交叉引用功能,他们可以在其中指定输出线圈,并且会在程序中的任何地方告诉他们使用它。如果您使用复制指令将 10 个字的 I/O 移动到 10 个字的数据结构中,他必须坐在那里计算位以找出复制源中的哪一位映射到目标端的哪一位复制。没错,注释可以提供帮助,但这也有问题... PLC 存储整个程序,并允许您在紧急情况下从它上传程序,如果您需要进行故障排除并且您没有原始程序的副本.问题是由于空间原因,PLC 不存储注释。因此,如果线路出现故障,每分钟停机成本为 5000 美元,而一个人带着笔记本电脑跑到那里,他可能不得不在没有评论的情况下快速上传并尝试对其进行故障排除。将这些复制说明放在那里,浪费了他 10 分钟的时间,只会让公司损失 50,000 美元的停机时间。这些是您在编写 PLC 程序时必须注意的事项。

其他一些提示:一些 PLC 支持 FOR 循环。 从不 使用它们。出于与上述相同的原因,它们使维护人员很难对代码进行故障排除。这是因为如果您在 PLC 中有一段代码每次扫描都会被扫描多次(例如循环的内容),那么当您进入在线 Debug模式时,软件无法显示每个代码的值执行此扫描的 10 个循环,因此您真的不知道您正在查看什么值。然后,您必须编写所有这些棘手的代码,以将特定循环索引的循环值提取到您可以监视的其他一些标记(变量)中。这只是在紧急情况下解决问题的另一个障碍。每次扫描多次使用子程序会遇到同样的问题。

维护人员很难理解间接寻址(我们称之为数组)。当您处理配方管理(存储和检索如何构建您的零件的值)时,通常可以使用它们,但您应该尝试在程序的控制部分远离它。

在 PC 编程中,我们当然寻求尽可能多地重用代码。然而,在 PLC 和控制系统中,停机时间极其昂贵,硬件也很昂贵。内存很便宜,实际上 PLC 程序员很便宜。因此,如果您的机器上有 10 个相同的东西(例如传送带驱动器或其他东西),那么您将有 10 个不同的文件(子程序),每个驱动器一个,每个驱动器都有自己的相关变量:例如Drive1_Run、Drive2_Run、Drive3_Run 等。当你有 PC 编程背景时,你会觉得这很“错误”,但这都是因为我上面提到的几点。当您处于停机状态时,有人说 Drive 3 不工作,您打开笔记本电脑,转到 Drive 3 的文件,然后查看 Run 输出梯级。当程序正在执行时,您可以从那里开始故障排除。没有断点(程序永不停止)。

祝你的努力好运。我又写了一些 insights from my years of programming PLCs ,如果您想查看它们。

关于plc - 学习PLC编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/309963/

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