前言
本文是基于B站上的《SCL核心应用课项目实战》课程,所做的笔记,主要包括程序代码和自己的理解注释。课程链接:SCL核心应用课项目实战(21课全)
陆杰锋老师讲得非常好,有理论讲解也有实战演练,需要具备一定的梯形图编程基础。
有空我会持续更新。
一、PLC编程中的数据类型
1.基本数据类型
数据类型用于指定数据元素的大小以及如何解释数据。每个指令参数至少支持一种数据类型,而有些参数支持多种数据类型。将光标停在指令的参数域上方,便可看到给定参数所支持的数据类型。
形参指的是指令上标记该指令要使用的数据位置的标识符,在编写FB、FC块时,针对一个面向对象的程序,不允许使用实参,内部参数要以形参形式存在,方便程序块调用和移植。
实参指的是包含指令要使用的数据的存储单元(含“%”字符前缀)或常量(例如,%MD400,
“'Number_of_Widgets”)。用户指定的实参的数据类型必须与指令指定的形参所支持的数据类型之一匹配。
整数数据类型:
整型数据类型(U=无符号,S=短,D=双)。
注意:Int和Word都是16位,两者的区别在于,Int是十进制数,用于加减乘除运算,Word是十六进制数,用于“与或非”判断。如果有一个块,接口类型是Int,直接写数字即可,而如果接口类型是Word,则需要写成W#16#…。
西门子PLC基础数据类型所能表达的最大位数是32位,左边是高位,右边是低位。
浮点数数据类型:
单精度浮点数的精度最高为6位有效数字,而双精度浮点数的精度最高为15位有效数字。在输入浮点常数时,最多可以指定6位(Real)或 15位(LReal)有效数字来保持精度。
时间数据类型:
字符数据类型:
常用于自由口通讯。
2.复杂数据类型
基本数据类型和复杂数据类型的主要区别是:基本数据类型长度最大32位,复杂数据类型长度超过32位。
其表达的具体内容如下:
数组数据类型:
自定义数据类型:
使用用户数据类型可将大量不同变量捆绑在一起组成一个逻辑单元。将用户数据类型作为一个类型创建,并在项目中使用该类型的实例。用户数据类型是项目相关的数据,可用于项目的所有HMI设备。
在自定义数据类型中,除基本数据类型外,还支持数组及数据类型间的嵌套。