有人说,PLC面向对象没有意义,可笑。我觉得说这话的人才可笑。其认知还停留在扁担倒了不知道是一的目不识丁阶段。
面向对象的三大特征,封装继承多态,而封装是面向对象的核心思想。有人认为,PLC并不提供这些工具,所以PLC面向对象没有意义。在新版本的CODESYS中,已经提供了这些工具,比如倍福PLC,施耐德PLC都可以实现。汇川PLC理论上也应该可以。
其次,面向对象是一种思想,并不依赖语言本身,只要心里有梦,哪里都是马尔代夫,就算用梯形图,依然可以实现面向对象,只是比较麻烦。而面向对象的编程语言,其实就是给我们把一些工具做好,让我们更加关注如何使用这些工具,而不是关注制作工具。
有人做的设备比较简单,都是些简单动作和逻辑,体会不到面向对象的优势,所以才会一叶障目。PLC面向对象的核心, 将对象作为程序的基本单元,将程序和数据封装在其中,以提高软件的复用性,灵活性以及可扩展性。按照人类的思维去开发设备的PLC程序。 比如对伺服的控制,就是给定伺服信号,让伺服去执行,然后根据伺服的反馈,来判断是否执行到位。而这一切,既可以利用PLC提供的各种工具也就是指令,功能块来实现,也可以使用自定义功能块来实现。