SCL(Structured Control Language,结构化控制语言)是一种类PASCAL语法的高级编程语言,这种语言基于标准DIN EN 61131-3(国际标准为IEC 61131-3)中定义的ST(Structured Text)。如果你熟悉PASCAL、C或BASIC等语言,那么SCL是很容易掌握的,但是在学习SCL时需要摆脱以前使用梯形图时养成的思维习惯。
梯形图语言是使用最广泛的一种plc编程语言,它沿袭了继电器控制电路的控制形式,在常用的继电器、接触器逻辑控制基础上简化了符号演变而来,具有形象、直观、实用等特点,这是因为PLC在以前基本上是电气专业的人使用,而梯形图正因为这些特点而使得PLC很容易被市场接受。但这种编程方式比较适合于逻辑控制,随着控制要求的越来越高,它对于处理复杂的控制算法亦已显得力不从心。
时至今日,PLC的性能已得到极大提升,它已不仅仅是一台可编程序逻辑控制器,而是集逻辑控制、过程控制、运动控制、网络通信于一体的智能控制平台,有的品牌PLC甚至采用inter i7作为核心CPU。现在的PLC下可控制所有生产设备,上可直达工厂MES系统,是实现工厂自动化的核心设备。与以往的plc编程人员多是电气出身不同的是现在更多计算机专业的人开始涉足PLC编程,此时迫切需要一种更强大、更先进的类高级编程语言来满足需求,而SCL正满足上述要求。
SCL依赖于TIA Portal编程环境,可以用来编写OB、FB、FC等,也可以用来创建DB、UDT等,它也可以调用其它语言如LAD、FBD编写的程序块。和LAD、FBD相比,它更擅长于编写那些数学计算类的程序,如数据处理、控制算法等。但对于复杂的逻辑程序显得不太直观,表3.1.1是在STEP7中常用的一些编程语言的比较。所以在编程语言是选择上,没有好和不好之分,只有合适和不合适之分。
由上面的表中可以看出,经过各方面的综合比较,SCL是最适合用于编写PLC组件的语言,是编写PLC组件的利器,我们强烈推荐使用它。在本书中,所有的组件均将使用这种语言编写,当然使用LAD、FBD、STL等其它语言也是可以的,这最终取决于个人习惯及喜好,我本人就曾在现场见过不论什么功能均使用STL编程的工程师,也见过从头到尾都是用SCL的工程师,算是萝卜青菜各有所爱吧。
值得注意的是,Portal平台的SCL编辑方式和STEP7 V5.x平台的SCL有所不同,新的SCL在灵活性和效率上均较之以前的版本提高不少。