『7x24小时有问必答』
0619 【万泉河】论一个好的程序框架的重要性

网上搜索技术资料,偶然间看到一个整理地非常好的PLC编程课程的帖子。
<imagedata title="image1" croptop="27877f" cropbottom="9017f"></imagedata>

原始初衷非常好,然而看了具体的程序框架, 实在忍不住评价一下。

当然,与品牌无关,也与个人无关。所以我就不提这个课程的具体品牌了。甚至, 整个行业现在通行的都是这样的做法。即,所有的同行,要么是连这个课程的水平也还没达到, 要么顶多做着和这个课程一样水平的程序。

所以实在不是对这个课件老师的刻意攻击,实在是你的课件做的太好了,太直观,一目了然,看得让我心痛。所以拿出来。作者本人如果看到的话, 希望作者本人是个极具学习能力和自我否定意识的人,能从我发表的本文中吸取一些有用的信息,可以找到提高技术水平的方向。

来看原文描述的程序框架:

相比之下, 我来给出烟台方法下的模块化的框架,上面的软件我不会用,做的效果肯定没有你的好。就直接在EXCEL表格里描述了:

PLC程序框架
工位1
手动、回原、自动、急停处理、报警、HMI
工位2
手动、回原、自动、急停处理、报警、HMI
工位3
手动、回原、自动、急停处理、报警、HMI
工位4
手动、回原、自动、急停处理、报警、HMI
工位5
急停处理、报警、HMI
工位6
手动、回原、自动、急停处理、报警、HMI
工位7
手动、回原、自动、急停处理、报警、HMI
工位8
手动、回原、自动、急停处理、报警、HMI
工位9
手动、回原、自动、急停处理、报警、HMI
工位10
手动、回原1,回原2、自动、急停处理、报警、HMI
工位11
手动、回原、自动、急停处理、报警、HMI
工位12
手动、回原、自动、急停处理、报警、HMI

注意看到我举例的工位5和其它工位不一样, 我们假设这个工位没有伺服驱动,没有电机, 可能只有一点简单控制对象,那么自然不需要有轴控方面的内容。
只需要简单处理,成为一个单独的工位即可。这样是不是看起来更自然,更具模块化?

而相比之下,看下原程序架构,如果工位5轴控去掉, 那么需要在各个模块中手动、自动、回原中均修改去掉其中的内容。

而实际的工程中,有可能有的工位配置的轴数还不一样, 比如工位10有2个轴, 原程序架构中还需要分别到各模块单元分别增加工位10.1 , 10.2的控制。

原本的程序架构, 其实程序控制与系统设备配置深度耦合,完全称不上什么模块化了。

我知道大多数人看到我提出的架构, 一定会第一时间举手反对说:不可能!做不到!

如果有人不能认可我提出的程序架构,可以先请一个外行, 比如你的女朋友,爸爸妈妈或者儿子女儿等,完全不懂PLC控制,让他来看一下,对比一下,用本能来选择哪一个架构更模块化,更方便。

如果他们选择我所建议的方法, 那么,你应该了解到,所谓的能和不能,其实是个客观技术问题,你之所以认为不能,其实是主观判断,是你被你的思维习惯所绑架了,或者还没有掌握这个技术能力。

让我们再看一眼文章中提到的一个轴的逻辑控制原理图:

这不正是最标准的一个模块应用吗,不正是应该完整封装在一个模块内的吗?

然后哪个工位用到了,调用这个模块,对其实例化。

如果大家对我提出的烟台方法的架构还有些不能理解的话, 参考下我上一篇文章《0618 【万泉河】(多品牌PLC80个工位双联开关控制公用灯示例》中所做的系列例子。

烟台方法, 无关品牌, 所有PLC品牌通用。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码