学习西门子plc编程需要的理论基础(漫谈西门子PLC编程语言)
1.编程语言
PLC的编程语言有STL(语句表)、LAD(梯形图)、FBD(功能块图)、GRAPH(顺序功能图)、SCL(结构化控制语言)、HiGraph(图形编程语言)、CFC(连续功能图)等。Step7中STL、LAD、FBD是基本的编程语言,并且在step7软件中可以进行自动转换。
2.数据类型
1)基本数据类型
2)复杂数据类型
复杂数据类型需要预先定义,其变量只能在全局数据块中声明,可以作为参数或逻辑块的局部变量。
Step7中支持的类型有:数组、结构、字符串、日期、时间、用户自定义类型、功能块类型。
A.数组
数组的维数为1~6,即最大是6维的。如下面的是3维数组的定义方式:
a ARRAY[1..3,1..5,1..7] INT
a表示一个3*5*7的三维整形数组,可以通过数组名加上下标方式来引用数组中的某个元素,如 a[2,3,4]
B.结构
例:Motor:STRUCT
Speed:INT
Current:REAL
END_STRUCT
C.字符串
字符串STRING是最多254个字符(CHAR)的一维数组,最大长度为256个字节(前2个字节是存储字符串的长度信息)。如’i'm is string'
D.日期和时间
日期和时间(DATE_AND_TIME)用于存储年、月、日、时、分、秒、毫秒和星期,占8个字节,用BCD码格式保存。星期1~7代表星期一到星期日
如:DT#2014-09-28-10:28:33.300表示2014年9月28号10点28分33.3秒
E.自定义类型
自定义类型(UDT)表示自定义结构,存放在UDT块中(UDT1~UDT65535),在另一个数据类型中作为一个数据类型“模板”。
例:把结构存与UDT1中,可以再数据库中定义数组abc ARRAY[1..10] UDT1.
上述的几种复杂类型在DB块中的定义如下图:
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com