西门子PLC 编程基础

上传人:jiups****uk12 文档编号:88687324 上传时间:2019-05-06 格式:PPT 页数:43 大小:844KB
返回 下载 相关 举报
西门子PLC 编程基础_第1页
第1页 / 共43页
西门子PLC 编程基础_第2页
第2页 / 共43页
西门子PLC 编程基础_第3页
第3页 / 共43页
西门子PLC 编程基础_第4页
第4页 / 共43页
西门子PLC 编程基础_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《西门子PLC 编程基础》由会员分享,可在线阅读,更多相关《西门子PLC 编程基础(43页珍藏版)》请在金锄头文库上搜索。

1、PLC 编程基础,3.1 PLC的基本结构,从结构形式上PLC可分为整体式和模块式两大类。不论哪种类型的PLC,其基本结构都是相同的。,CPU 存储器 输入输出电路 编程装置 电源 外围接口,3.2 PLC工作原理,PLC采用循环执行用户程序的方式,称为循环扫描工作方式。,一个循环扫描过程周期可分为输入采样、程序执行、输出刷新三个阶段。,执行OB1中的程序 (循环执行) 事件 (日期时间中断、硬件中断等) 调用其他 OB,FB,FC,循环监视时间的开始,启动块 (OB 100) 上电后执行一次,从模块读信号状态,并保存到过程映象区 (PII),把过程映象输出表(PIQ) 写到输出模块,循环程序

2、执行,过程映象,字节 0 字节 1 字节 2 : : :,PII,PIQ,CPU 存储器区,: : A I 2.0,= Q 4.3 : : : :,1,1,输入采样阶段 依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应单元内。 输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。 因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。,一个扫描周期中与用户有关的三阶段,用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序。在扫描每一

3、条梯形图时,并按先左后右、先上后下的顺序进行逻辑运算,逻辑运算的结果存于映象区。 上面的逻辑运算其运算结果会对下面的逻辑运算起作用;相反,下面的逻辑运算其运算结果只能到下一个扫描周期才能对上面的逻辑运算起作用。,输出刷新阶段,当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照存在I/O映象区的运算结果,刷新所有对应的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输出。,PLC的工作特点,所有输入信号在程序处理前统一读入,并在程序处理过程中不再变化。而程序处理的结果也是在扫描周期的最后时段统一输出。其工作特点是将一个连续的过程分解成若干静止的状态,极类似放映电

4、影的原理。便于面向对象的思维。 PLC仅在扫描周期的起始时段读取外部输入状态,该时段相对较短,抗输入信号串入的干扰极为有利。 这种方式对于高速变化的过程可能漏掉变化的信号,也会带来系统响应的滞后。为克服上述问题,可利用立即输入输出、脉冲捕获、高速计数器或中断技术。,扫描工作方式对程序执行的影响,I0.0代表外部的按纽,当按纽动作后,左面的程序只需要一个扫描周期就可完成对M0.4的刷新,而右面的程序要经过四个扫描周期才能完成对M0.4的刷新。 在扫描周期极为短的情况下(100ms),无时序配合要求,感觉不到这两段程序执行的的差异。 在有时序配合的情况下,这种差异要引起注意。,3.3 存储器及其寻

5、址,S7 CPU的存储区包括三个基本区域,即装载存储器,工作存储器RAM和系统存储器RAM。,系统存储区的地址区,CPU中的寄存器,(1)累加器(ACCUx) 32位累加器是用于处理字节、字或双字的寄存器。S7-300有两个累加器ACCU1和ACCU2,S7-400有4个累加器ACCU1ACCU4。 (2)地址寄存器 2个地址寄存器作为指针用于寄存器间接寻址。 (3)数据块寄存器 DB和DI寄存器分别用来保存打开的共享数据块和背景数据块的编号。 (4)诊断缓冲区 (5)状态字寄存器 状态字是一个16位的寄存器,用于存储CPU执行指令的状态,STEP 7 的可能寻址范围,设计的地址区,访问区域,

6、缩写,加在一起的最大区域,过程映象 I/Q,输入 /输出位,I / Q,0.0 - 65,535.7,输入 /输出字节,I / QB,0 - 65,535,输入 /输出字,IW / QW,0 - 65,534,输入 /输出双字,ID / QD,0 - 65,532,存储器标志,存储器位,M,0.0 - 255.7,存储器字节,MB,0 - 255,存储器字,MW,0 - 254,存储器双字,MD,0 - 252,I/Q 外部输入/输出,I/Q 字节, 外设,PIB / PQB,0 - 65,535,I/Q 字, 外设,PIW/PQW,0 - 65,534,I/Q 双字, 外设,PID/PQD,

7、0 - 65,532,定时器,定时器 (T),T,0 - 255,计数器,计数器 (C),C,0 - 255,数据块,数据块 (DB),DB,1,-,65,532,数据块,用OPN DB打开,位, 字节, 字, 双字,DBX,DBB,DBW,DBD,0,-,65,532,用OPN DI打开,位, 字节, 字, 双字,DIX,DIB,DIW,DID,0,-,65,532,数据在存储器中存取的方式,二进制数的1位(bit)只有0和1两种不同的取值,可用来表示开关量(或称数字量)的两种不同的状态,如触点的断开和接通,线圈的通电和断电等。如果该位为1,则表示梯形图中对应的编程元件的线圈“通电”,其常开

8、触点接通,常闭触点断开,反之相反。位数据的数据类型为BOOL(布尔)型。,(1)位、字节、字和双字,两个字节组成1个字(Word),两个字组成1个双字(Double Word) 。一般用二进制补码表示有符号数,其最高位为符号位,最高位为0时为正数,为1时为负数,最大的16位正数为7FFFH,H表示十六进制数。,8位二进制数组成1个字节(Byte),其中的第0位为最低位(LSB)、第7位为最高位(MSB)。,MW200,MD200,MW200,MW202,字节、字和双字的取值范围见表,位存储单元的地址由字节地址和位地址组成,如I3.2,其中的区域标识符“I”表示输入(Input),字节地址为3,

9、位地址为2。这种存取方式称为“字节.位”寻址方式。,(2)数据的存取方式,输入字节IB3(B是Byte的缩写)由I3.0-I3.7这8位组成。相邻的两个字节组成一个字,MW200表示由MB200和MB201组成的1个字,MW200中的M为区域标识符,W表示字(Word),200为起始字节的地址。MD200表示由MB200MB203组成的双字,M为区域标示符,D表示存取双字(Double Word),200为起始字节的地址。,存储区及功能见下表:,3.4 数据格式与数据类型,数制,二进制数 十六进制数 BCD码,STEP 7数据类型概述,基本数据 类型 (到32 位),复杂数据 类型 (长于32

10、位),用户定义数据类型 (长于 32 位),STEP 7基本数据类型,BOOL 1 True 或 False (1 或0) BYTE 8 B#16#A9 WORD 16 W#16#12AF DWORD 32 DW#16#ADAC1EF5 CHAR 8 w S5TIME 16 S5T#5s_200ms INT 16 123 DINT 32 L#65539 REAL 32 1.2 或 34.5E-12 TIME 32 T#2D_1H_3M_45S_12MS DATE 16 D#1993-01-20 TIME_OF_DAY 32 TOD#12:23:45.12,关键字,长度 (位),该类型的常数举例

11、,复杂数据类型,关键字 长度 (位) 举例,DATE_AND_TIME 64 DT#97-09-24-12:14:55.0 STRING 8 * (字符个数+2 ) This is a string (最多254个字符的字符串) SIEMENS ARRAY 用户定义 测量值: ARRAY120 (相同数据类型的元素组) INT STRUCT 用户定义 Motor: STRUCT (不同数据类型的元素组) Speed : INT Current: REAL END_STRUCT UDT UDT as block UDT as array element (用户定义数据类型 = 用户定义 基本或复

12、杂数据类型组成的 STRUCT Drive: ARRAY14 模板) Speed : INT UDT1 Current: REAL END_STRUCT,程序块类型,故障,循环,定时,过程,OB = 组织块 FB = 功能块 FC = 功能 SFB = 系统功能块 SFC = 系统功能,操作系统,3.5 程序结构,用户定义的块,用户块包括组织块、功能块、功能和数据块。,组织块(OB),组织块是操作系统和用户程序之间的接口。组织块只能由操作系统来启动。各种组织块由不同的事件启动,且具有不同的优先级,而循环执行的主程序则在组织块OB1中。,注意:各种块(除组织块外)的数目和代码的长度是与CPU不相

13、关的,而组织块的数目则与CPU的操作系统相关。,功能块(FB),功能块是通过数据块参数而调用的。它们有一个放在数据块中的变量存储区,而数据块是与其功能块相关联的,称为背景数据块。 特点:每一个功能块可以有不同的数据块。这些数据块虽然具有相同的数据结构,但具体数值可以不同。,功能(FC),功能没有指定的数据块,因而不能存储信息。功能常常用于编制重复发生且复杂的自动化过程。,数据块(DB),数据块中包含程序所使用的数据。,块类型 特点 系统功能 - 存储在CPU的操作系统中 (SFC) - 用户可以调用此功能 (不需要存储器) 系统功能块 - 存储在CPU的操作系统中 (SFB) - 用户可以调用

14、此功能 (需要存储器) 系统数据块 - 用于组态数据和参数的数据块 (SDB),系统块,数据块类型和结构,CPU314中块的大小是8K字节 数据块提供的最大存储空间 依赖于CPU的型号,0,7,调用程序块,调用程序块,被调用的块,(OB, FB, FC),(FB, FC, SFB, SFC),程序执行,程序执行,调用另一个块的指令,块结束,STEP 7为设计程序提供三种方法。基于这些方法,可以选择最适合于你的应用的程序设计方法。,线性化,模块化,结构化,线性化编程: 所有的指令都在一个 块 (OB1) 内。,模块化编程: 每个设备的控制指令 都在各自的块内。 OB1按顺序调用每个块。,结构化编

15、程: 不同的块调用可重复利用的代码。 OB1 (或其他块) 调用这些块 并传递相应的参数。,OB1,OB1,OB1,配方 A,配方 B,混合器,排空,泵,排空,3.6 编程方法,线性化编程,OB1,Network 1,Network 2,Network 3,电机控制,信息,取得操作的小时数,模块化编程,主程序,子块,程序 处理,程序 处理g,调用另一个块的指令,块结束,OB,FC/FB,模块化程序的执行,结构化编程,OB 1,3.7 编程语言,IEC(国际电工委员会)5种编程语言的表达方式,即顺序功能图(SFC,Sequential Function chart),梯形图(LAD,Ladder Diagram),功能块图(FBD,Function Block Diagram),指令表(Instruction List)和结构文本(ST,Structured Text)。,STEP 7标准软件包配置了梯形图LAD、语句表(即IEC1131-3中的指令表)STL和功能块图FBD三种基本编程语言,STEP 7还有多种编程语言作为可选软件包,如CFC,SCL(西门子中的结构文本),S7-Graph 和S7-HiGraph。这些编程语言中,LAD、FBD和S7-Graph为图形语言,STL、SCL和S7-HiGraph为文字语言,CFC则是一种

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号