佛山西门子PLC模块总代理商
西门子代理商
西门子PLC代理商
西门子授权代理商
西门子模块代理商
西门子总代理商
PLC编程基础知识S7程序组成
(1) S7程序的组成。作为计算机控制系统的一种,PLC与其他计算机控制系统一样,从本质上说,PLC 用户程序同样都是由各种指令所组成的集合,只不过是当采用不同编程语言时,指令的表现形式有所不同而已。
S7系列PLC的用户程序的组成如图3-6所示。程序由不同的逻辑块(OB、FC、FB、SFB、SFC)与数据块(DB)所组成,数据块DB是用于存储程序数据的存储单元,逻辑块则是程序的构成主体。在S7程序中,逻辑块由多个网络(Network)组成,而指令则是组成网络的基本元素。
图3-6 S7系列PLC的用户程序的组成
(2) 逻辑块(Logie Block)。逻辑块是指为了实现控制对象中某一部分功能而设计的、相对独立的指令集合。在不同PLC中可以使用的逻辑块种类与数量是不同的。如对S7-200 PLC,可以使用的逻辑块为主程序(组织 OB1)、子程序(SBRn)、中断程序(INRn)与数据块DBI,DBI的数据存储需要通过变量寄存器V 实现;而对S7-300/400PLC,可以使用的逻辑块包括组织块(OBn)、程序块(FCn)、功能块(FBn)、系统程序块(SFCn)、系统功能块(SFBn)等多种,并可以使用数据块(DBn)。
(3) 网络(Network)。逻辑块中功能相对独立的程序段称为网络。在S7系列PLC中,为了对程序进行逐段注释,引入了”网络”这一概念作为基本的注释单位。网络具有一定的编号,编号通常由编辑软件自动生成。
在S7系列PLC中,网络有规定的格式要求。例如,网络一般应以直接连接在梯形图”主母线”的触点作为起始,因此,即使实际并不需要触点信号,为了满足格式的要求,也要在编程时插入恒定为”1”状态的触点(如SMO.0)作为起始。再如,当网络中直接连接于”主母线”的触点多于1个时,原则上每一网络只能有一个线圈输出,为此,对于需要多个线圈在同一网络中的情况,应通过恒定为”1”状态的触点(如SM0.0)将其转化为多个线圈输出。
当PLC采用指令表进行编程时,如果仅仅从编程的角度考虑,完全可以不划分网络,但这样的程序一般不能转换为梯形图。因此,为了转换的路要,在指令表编程时同样应插入”网络(Network)”这一关键词。
(4)指令。指令是组成PLC用户程序的基本组成元素,编程的实质是运用编程语言进行各类指令的编写过程。
在不同的PLC上,指令都有规定的格式与要求,指令的功能也不尽相同,因此,熟悉指令并能够熟练使用各种指令是每一个PLC使用者必须掌握的基本内容和应具备的基本功。
PLC的指令多种多样,有基本逻辑运算指令、数据比较指令、格式转换指令、数学运算指令、功能指令等,而且对于不同的PLC具有不同的要求。
S7指令的格式
(1) S7的指令格式。在PLC积序中,指令由操作码与操作数两部分组成,如图3-7所示。
指令中的操作码用来定义CPU需要执行的操作;操作数用来定义操作对象。通俗地说操作码告诉CPU要做什么,而操作数则告诉CPU 用什么去做。
图3-7 指令格式
PLC的操作码又称为指令代码,它由英文字母或者字符组成,如”LD”、”A”、”O”、”=”等都是指令代码。
PLC的操作数又称为操作对象,在S7中,可以通过”地址”或”数据”两种形式来定义操作对象,其中,地址又可以分为”**地址”与”符号地址”两种;数据包括”基本数据”、”复合数据”与”参数”三类。
(2)**地址与符号地址。当操作对象通过”地址”定义时,可以使用”**地址(Memory address)”与”符号地址(Symbol address)”两种*方式。
在PLC程序中使用”符号地址”可以方便PLC程序编辑、阅读、检查,但它只能在编程器中使用,并需要编制专门的注释文件(如符号表、变量声明表等)。
**地址是实际PLC中能够接受的地址,不管在编程时是否使用符号地址,CPU中存储的只能是**地址。因此,当使用编程器对某一PLC内部的程序进行读出操作时,只能输出**。
使用**地址与符号地址编程的程序如图3-8、图3-9所示。
图3-8 使用**地址编程的程序
图3-9 使用符号地址编程的程序
PLC控制系统程序的调试
PLC控制系统程序的调试一般包括I/O端子测试和系统调试两部分内容,良好的调试步骤有利于加速总装调试的过程。
4.1 I/O端子测试
用手动开关暂时代替现场输入信号,以手动方式逐一对PLC输入端子进行检查、验证,PLC输入端子的指示灯点亮,表示正常;反之,应检查接线或者是I/O点坏。
我们可以编写一个小程序,在输出电源良好的情况下,检查所有PLC输出端子指示灯是否全亮。PLC输入端子的指示灯点亮,表示正常。反之,应检查接线或者是I/O点坏。
4.2 系统调试
系统调试应首先按控制要求将电源、外部电路与输入输出端子连接好,然后装载程序于PLC中,运行PLC进行调试。将PLC与现场设备连接。在正式调试前全面检查整个PLC控制系统,包括电源、接地线、设备连接线、I/O连线等。在保证整个硬件连接正确无误的情况下即可送电。
把PLC控制单元的工作方式设置为“RUN”开始运行。反复调试可能出现的各种问题。在调试过程中也可以根据实际需求对硬件作适当以配合软件的调试。应保持足够长的运行时间使问题充分暴露并加以纠正。调试中多数是控制程序问题。一般分以下几步进行:
(1) 对每一个现场信号和控制量做单独测试;
(2) 检查硬件/修改程序;
(3) 对现场信号和控制量做综合测试;
(4) 带设备调试;
(5) 调试结束。
5 结束语
PLC控制系统的设计是一个步骤有序的系统工程,要想做到熟练自如,需要反复设计和实践。本文是PLC控制系统的设计和实践经验的总结,在实际应用中具有良好的效果。
6ES7211-1BE40-0XB0 | CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI |
6ES7211-1AE40-0XB0 | CPU 1211C DC/DC/DC,6输入/4输出,集成2AI |
6ES7211-1HE40-0XB0 | CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI |
6ES7212-1BE40-0XB0 | CPU 1212C AC/DC/Rly,8输入/6输出,集成2AI |
6ES7212-1AE40-0XB0 | CPU 1212C DC/DC/DC,8输入/6输出,集成2AI |
6ES7212-1HE40-0XB0 | CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI |
6ES7214-1BG40-0XB0 | CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI |
6ES7214-1AG40-0XB0 | CPU 1214C DC/DC/DC,14输入/10输出,集成2AI |
6ES7214-1HG40-0XB0 | CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI |
6ES7215-1BG40-0XB0 | CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES7215-1AG40-0XB0 | CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO |
6ES7215-1HG40-0XB0 | CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES72171AG400XB0 | CPU 1217C DC/DC/DC,14输入/10输出,集成2AI/2AO |