阜阳S7-1200PLC西门子代理商原装现货 阜阳西门子S7-1200PLC代理,阜阳西门子PLC代理,西门子S7-1200PLC代理,西门子PLC代理
西门子PLC共享数据块与数据内容
1. 数据块的分类
数据块(DB)用来分类储存设备或生产线中变量的值,数据块也是用来实现各逻辑块之间的数据交换、数据传递和共享数据的重要途径。数据块丰富的数据结构便于提高程序的执行效率和进行数据管理。与逻辑块不同,数据块只有变量声明部分,没有程序指令部分。
数据块分为共享数据块(DB)和背景数据块(DI)。在共享数据块和符号表中声明的变量都是全局变量。用户程序中所有的逻辑块(FB、FC、SFB、SFC和OB)都可以使用共享数据块和符号表中的数据。
2. 生成共享数据块
在符号表中,共享数据块的数据类型是它本身,背景数据块的数据类型是对应的功能块。
用鼠标右键点击SIMATIC管理器左边窗口中的“块”,在弹出的菜单中执行“插入新对象”→“数据块”命令,生成新的数据块,默认的类型为共享数据块。
3. 基本数据类型
阜阳S7-1200PLC西门子代理商原装现货 阜阳西门子S7-1200PLC代理,阜阳西门子PLC代理,西门子S7-1200PLC代理,西门子PLC代理
基本数据类型包括位(BOOL)、字节(BYTE)、字(WORD)、双字(DWORD)、整数(INT)、双整数(DINT)和浮点数(FLOAT,或称实数REAL)等(见3.2.2节)。
4. 复杂数据类型
复杂数据类型包括日期和时间(DATE_AND_TIME)、字符串(String)、数组(Array)、结构(Struct)和用户定义的数据类型(UDT)。
(1)日期和时间
日期和时间(DATE_AND_TIME,缩写为DT)占用8个字节的BCD码。第1~6个字节分别存储年的低两位、月、日、时、分和秒,毫秒存储在整个第7个字节和第8个字节的高4位,星期存放在第8个字节的低4位。星期日的代码为1,星期一~星期六的代码为2~7。例如2010年7月27日12点30分25.123秒可以表示为DT#10-07-27-12∶30∶25.123,可以省略毫秒部分。
通过调用程序编辑器的文件夹“\Libraries\ Standard Library\IEC Function Block”中的IEC功能(见附表B-4),可以实现DATE_AND_TIME数据类型与基本数据类型之间的相互转换、日期时间的比较和加、减,具体的使用方法见在线帮助。
调用SFCO" SET_CLK",可以设置和启动CPU时钟的时间和日期。调用SFC1"的READ_CLK",可以读取CPU系统时钟当前的日期和时间。
(2)字符串
字符串(String)是字符(Char)组成的一维数组,每个字节存放1个字符。第1个字节是字符串的*大字符长度,第2个字节是字符串当前有效字符的个数,字符从第3个字节开始存放,一个字符串*多有254个字符。字符串的默认长度为254B,在DB4中定义字符串Fault的长度为20个字符(见图4-7),它只占用从DB4.DBB20开始的22B,其初值只有4个字符'Over’。String变量中未使用的字节地址被初始化为B#16#00。
将DB4下载到仿真PLC,用变量表监控DB4.DBB20和DB4.DBB21,它们的值分别为20(字符串Fault的长度为20)和4(当前有4个字符)。还可以看到从DB4.DBB22开始的4个字节中字符‘Over’的ASCII码。可以用语句表中的基本指令访问字符串中的字符,例如用指令“L DB4.Fault 【3】”来访问字符串Fault的第3个字符。
可以用标准库的IEC库中的21个功能来处理字符串变量(见附表B-4),包括字符串与其他数据类型的转换、字符串的比较和字符串的编辑,具体的使用方法见在线帮助。
(3)数组
数组(ARRAY)是同一类型的数据组合而成的一个单元,数组的维数*多为6维。图4-6给出了一个二维数组ARRAY 【1.2,1..3】 的内部结构,它共有6个字节元素,图中的每一小格为二进制的1位,每个元素占一行(一个字节)。ARRAY后面的方括号中的数字用来定义每一维的起始元素和结束元素在该维中的编号,可以取-32768~32767之间的整数。各维之间的数字用逗号隔开,每一维开始和结束的编号用两个小数点隔开。如果某一维有n个元素,该维的起始元素和结束元素的编号可以采用1和n,例如AR-RAY [1..100]。
(4)结构
结构(STRUCT)可以是不同类型的数据的组合。可以用基本数据类型、复杂数据类型(包括数组和结构)和用户定义数据类型(UDT)作为结构中的元素,例如一个结构可以由数组和结构组成,结构可以嵌套8层。用户可以把过程控制中有关的数据统一组织在一个结构中,作为一个数据单元来使用,而不是使用大量的单个的元素,为统一处理不同类型的数据或参数提供了方便。
(5)用户定义数据类型
阜阳S7-1200PLC西门子代理商原装现货 阜阳西门子S7-1200PLC代理,阜阳西门子PLC代理,西门子S7-1200PLC代理,西门子PLC代理
用户定义数据类型(User-Defined Data Types)简称为UDT,是一种特殊的数据结构,用户只需要对它定义一次,定义好以后可以在用户程序中作为数据类型使用。可以用它来产生大量的具有相同数据结构的数据块,用这些数据块来输入用于不同目的的实际数据。例如生成用于颜料混合配方的UDT后,可以用它生成用于不同颜色配方的数据组合。用户定义数据类型由基本数据类型和(或)复杂数据类型组成。定义好以后可以在符号表中为它指定一个符号名,使用UDT可以节约录人数据的时间。
STEP7硬件组态
a.设备组态的任务。设备组态(Configuring)的任务就是在设备和网络编辑中生成一个与实际的硬件系统对应的虚拟系统,包括系统中的设备(PLC和HMI),PLC各模块的型号、订货号和版本。模块的安装位置和设备之间的通信连接,都应与实际的硬件系统完全相同。
此外还应设置模块的参数,即给参数赋值,或称为参数化。
自动化系统启动时,CPU比较组态时生成的虚拟系统和实际的硬件系统,如果两个系统不一致,将采用相应的措施。
双击项目视图的项目数中的"设备和网络",打开设备与网络编辑器。
b在设备视图中添加模块。打开项目树中的"PLC_1"文件夹(见图2-121),双击其中的"设备配置",打开设备视图,可以看到1号插槽中的CPU模块。
在硬件组态时,需要将I/O模块或通信模块放置到工作区的机架的插槽内,有两种放置硬件对象的方法。
(a)用"拖放"的方法放置硬件对象。点击图2-121中*右边竖条上的"硬件目录",打开硬件目录窗口。选中文件夹“\DI\D18×24VDC”中订货号为6ES7-221-1BH30-0XB0的8点DI模块,其背景变为深色。所有可以插入该模块的插槽四周出现深蓝色的边框,只能将该模块插入这些插槽。用鼠标左键按住该模块不放,移动鼠标,将选中的模块“拖”到机架中CPU右边的2号插槽,该模块浅色的图标和订购号随着光标一起移动。没有移动到允许放置该模块的工作区时,光标的形状为O(禁止放置);反之光标的形状变为2 (允许放置)。此时松开鼠标左键,被拖拽的模块被放置到工作区。