plc的stl是什么指令(老司机带你飞STSCL)

虽然很多梯形图的铁杆粉丝和小编进行了一轮又一轮的拉锯战,但是小编发现,很多然连ST语言到底是什么都搞不清,包括很多和小编一样,喜欢ST语言的人也搞不太清什么是ST语言,今天小编就跟大家科普一下。

plc的stl是什么指令(老司机带你飞STSCL)(1)

概念清晰,逻辑思路清晰,是搞一切工程技术的必备条件。从事工业控制,如果你对概念是模糊的,或是一知半解的,那么,你永远无法深刻理解各种知识,你永远都会疲于奔命!!就像很多棒槌说的,怎么我学了西门子S7-200,再去学习西门子的S7-1200像换了一个品牌,还要重新学??所以,明确各种概念,是你成为大神的必备条件。

ST,是STRUCT TEXT 的缩写,是IEC61131-3标准制定的编程语言!!从字面理解,是结构化文本语言!很明显,它是为结构化编程而诞生的!!它以计算机的Pascal语言为基础,针对工业控制进行了一系列的优化和修改!!也可以认为它是根据C语言来的,但这种说法不太严谨,因为ST语言是不区分大小写的,而C语言严格区分大小写。这些都是根据工业控制的实际情况而制定的。

比如, Axis_Enable 和 AXIS_ENABLE 这两个变量,在ST语言中是没任何区别的,但在C语言中,可是完全不一样的。

plc的stl是什么指令(老司机带你飞STSCL)(2)

提到工业4.0,提到工业自动化,西门子是一个绕不开的坎!!总之,它在工业自动化领域,就是泰山北斗,少林武当!而西门子也是非常强势的,它最新推出的博途软件平台,并不是完全遵守IEC61131-3标准,而是略有修改,就好比武林大佬们自创武功或是修改前辈留下的武功。西门子推出了自己的编程语言,SCL( Structured Control Language)语言,也就是结构化控制语言,它其实和IEC标准制定的ST语言是一样的,只是在个别语法和功能块(FB)调用上,略有不同!!最需要主要的比如

IF

语句 ;

END_IF;

在西门子的SCL中,END_IF是要加分号的,而在标准的ST语言中,是不用的。

所以,ST和SCL是一回事!!

plc的stl是什么指令(老司机带你飞STSCL)(3)

而STL,是西门子在STEP7时代推出的语言,它不是STRUCT TEXT LANGUAGE的缩写,所以,它和ST语言完全没关系。STL语言是一种汇编语言,是面向机器底层的语言,可以直接操作寄存器,可读性不强,和80C51单片机的机器语言是一个层面。所以,它是一种低级语言,而ST,SCL都是中高级语言。

越高级的语言,可读性越好,越侧重于变量和算法,和硬件无关,而越低级的语言,越侧重于寄存器地址,和硬件关系紧密,并可以直接操作硬件,但可读性差,执行效率高。现在,西门子的博途平台是主推SCL的。

所以,STL和ST,SCL完全不是一回事,不可混为一谈,不要看上去都有MOVE,都是英文,就认为是同一种东西!!这种思维方式,注定你会概念混乱的,而概念混乱,是从事工控行业的大忌!!

还有一种语言IL,称之为指令表,它其实是梯形图的一种描述,是可以和梯形图相互转换的,根本不是一种编程语言,严格说来,它只是梯形图的一种表现形式。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页