是这样的,想和大家讨论一下200程序结构的问题:程序功能比较多,只单单从程序的执行速度方面来考虑,是把所有功能的程序都放在主程序里好,还是建立不同的子程序在主程序里调用好,或者两者一样?向大家请教一下,最好有说服力的分析(只从程序执行速度的角度分析),谢谢!
最佳答案
当然是建立不同的子程序在主程序中调用的好。因为第一种是线性编程而第二种属于结构化编程 结构化编程有利于设备的控制及维护,对于设计和项目开发人员来说,这种编程带来的好处是很明显,一个系统往往由很多部件组成,工艺控制也有很多类型,将一个系统分解为不同的部分后,项目开发人员就可以分工协作,对于通用部分,可以开发子程序来实现通用性,对于不同工艺,又可以分开来独立编程,这种结构化的编程优越性和高效率是一竿子到底的线性化编程不能取代的。而且对于PLC的资源来说,空间是有限的,没有退出,只有进入的话,意味着空间的堵塞和效率的降低,所以要记住一个原则以退为进,从一个子程序退出意味着资源的释放,我们要看到PLC的L临时变量是在子程序本地有效,变量名也是在子程序内部有效,如果你在一个系统就在主程序中,将所有的工艺流程写完,那么你可能就会占用很多的变量名也就是临时变量,但如果你用结构化编程来实现的话,你的临时变量就可以大大减少,因为程序在扫描的时候,遇到一个临时变量,就开一个空间,遇到一个开一个,但由于你的程序是线性的,没有退出,那么这个资源就会一直在增加,最后空间被挤满了,效率就没有了,而结构化编程却可以使用时占用一部分空间,退出后这个资源空间就释放掉,对于PLC来说效率就可以很高。编程有时候考虑的不仅仅是让设备动起来,合理的利用资源,提高效率才能更胜一筹。与大家共勉。 希望我的回答能够帮助到你!
提问者对于答案的评价:
对于减少对不执行程序的扫描,大家都认同了,但关于本答案的分析还望大家讨论一下。本人对PLC了解不是很深入!
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc346340.html