1、系统程序
系统程序是PLC赖以工作的基础,采用汇编语言编写,在PLC出厂时就已固化于ROM型系统程序存储器中。
系统程序分为系统程序和解释程序。
系统程序用于监视并控制PLC的工作,如诊断PLC系统工作是否正常,对PLC各模块的工作进行控制,与处设交换信息,根据用户的设定使PLC比处在编制用户程序状态或者处在运行用户程序状态等。
解释程序用于把用户程序解释成微处理器能够执行的程序。来自PLC之家。
2、用户程序
用户程序又称为应用程序,是用户为完成某一特定 的控制任务而利用PLC的编程语言编制的程序。 来自PLC之家。
用户程序通过编程器输入到PLC的用户程序存储器中。
3、编程语言
可编程控制器是通过程序对系统进行控制的,所以各种机型的PLC都有自己的编程语言。
PLC的编程语言有多种,如梯形图、语句表、逻辑功能图、逻辑等。下面介绍常用的梯形图和语句表编程语言。
PLC控制系统硬件设计需要考虑的PLC产品种类
对输入 / 输出点的选择
要先弄清除控制系统的 I/O 总点数,再按实际所需总点数的 15 ~ 20 %留出备用量(为系统的改造等留有余地)后确定所需 PLC 的点数。
PLC 的输出点可分为共点式、分组式和隔离式几种接法。隔离式的各组输出点之间可以采用不同的电压种类和电压等级,但这种 PLC 平均每点的价格较高。如果输出信号之间不需要隔离,则应选择前两种输出方式的 PLC 。
(2) 对存储容量的选择
对用户存储容量只能作粗略的估算。在仅对开关量进行控制的系统中,可以用输入总点数乘 10 字 / 点+输出总点数乘 5 字 / 点来估算;计数器 / 定时器按( 3 ~ 5 )字 / 个估算;有运算处理时按( 5 ~ 10 )字 / 量估算;在有模拟量输入 / 输出的系统中,可以按每输入 / (或输出)一路模拟量约需( 80 ~ 100 )字左右的存储容量来估算;有通信处理时按每个接口 200 字以上的数量粗略估算。后,一般按估算容量的 50 ~ 100 %留有裕量。对缺乏经验的设计者,选择容量时留有裕量要大些。
(3) 对 I/O 响应时间的选择
PLC 的 I/O 响应时间包括输入电路延迟、输出电路延迟和扫描工作方式引起的时间延迟(一般在 2 ~ 3 个扫描周期)等。对开关量控制的系统, PLC 和 I/O 响应时间一般都能满足实际工程的要求,可不必考虑 I/O 响应问题。但对模拟量控制的系统、特别是闭环系统就要考虑这个问题。
(4) 根据输出负载的特点选型
不同的负载对 PLC 的输出方式有相应的要求。例如,频繁通断的感性负载,应选择晶体管或晶闸管输出型的,而不应选用继电器输出型的。但继电器输出型的 PLC 有许多优点,如导通压降小,有隔离作用,价格相对较便宜,承受瞬时过电压和过电流的能力较强,其负载电压灵活(可交流、可直流)且电压等级范围大等。所以动作不频繁的交、直流负载可以选择继电器输出型的 PLC 。
(5) 对在线和离线编程的选择
离线编程是指主机和编程器共用一个 CPU ,通过编程器的方式选择开关来选择 PLC 的编程、和运行工作状态。编程状态时, CPU 只为编程器服务,而不对现场进行控制。在线编程是指主机和编程器各有一个 CPU ,主机的 CPU 完成对现场的控制,在每一个扫描周期末尾与编程器通信,编程器把修改的程序发给主机,在下一个扫描周期主机将按新的程序对现场进行控制。计算机编程既能实现离线编程,也能实现在线编程。在线编程需购置计算机,并配置编程软件。采用哪种编程方法应根据需要决定。
(6) 据是否联信选型
若 PLC 控制的系统需要联入工厂自动化网络,则 PLC 需要有通信联网功能,即要求 PLC 应具有连接其他 PLC 、上位计算机及 CRT 等的接口。大、中型机都有通信功能,目前大部分小型机也具有通信功能。
(7) 对 PLC 结构形式的选择
在相同功能和相同 I/O 点数据的情况下,整体式比模块式价格低。但模块式具有功能扩展灵活,维修方便(换模块),容易判断故障等优点,要按实际需要选择 PLC 的结构形式。
PLC提供的编程语言简介
PLC的编程语言与一般计算机语言相比具有明显的特点,它既不同于一般语言,也不同于一般汇编语言,它既要易于编写又要易于调试。目前,还没有一种对各厂家产品都能兼容的编程语言。
目前,PLC为用户提供了多种编程语言,以适应编制用户程序的需要,PLC提供的编程语言通常有以下几种:梯形图、指令表、顺序功能图和功能块图
1、梯形图
梯形图编程语言是从继电器控制系统原理图的基础上演变而来的。PLC的梯形图与继电器控制系统梯形图的基本思想是一致的,但是在使用符号和表达式等方面有一定区别。
梯形图具有形象、直观、简单明了,易于理解的特点,特别适合开关量逻辑控制,是PLC基本、普遍的编程语言。
2、语句表(STL)
语句表是用助记符来表达PLC的各种功能。它类似计算机的汇编语言,但比汇编语言通俗易懂,也是较为广泛应用的一种编程语言。使用语句表编程时,编程设备简单,逻辑紧凑、系统化,连接范围不受限制,但比较抽象。一般可以与梯形图互相转化,互为补充。目前,大多数PLC都有语句表编程功能。
3、顺序功能图(SFC)
顺序功能图编程是一种图形化的编程方法,亦称功能图。它的编程方式采用画工艺流程图的方法编程,只要在每个工艺方框的输入和输出端,标上特定的符号即可。采用顺序功能图编程,可以使具有并发、选择等复杂结构的系统控制程序大为简化。许LC都提供了用于SFC编程的指令,它是一种效果显著、深受欢迎的编程语言,目前电工会(IEC)也正在实施并发展这种语言的编程标准。
4、 功能块图(FBD)
逻辑功能图是一种由逻辑功能符号组成的功能块来表达命令的图形语言,这种编程语言基本上沿用了半导体逻辑电路的逻辑方块图。对每一种功能都使用一个运算方块,其运算功能由方块内的符号确定。对于熟悉逻辑电路和具有逻辑代数基础的来说,使用非常方便。
西门子S7系列PLC的主要种类及应用软件
德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用也相当广泛,在冶金、化工、印刷生产线等领域都有应用。西门子(SIEMENS)公司的PLC产品包括LOGO,S7-200,S7-300,S7-400,工业网络,HMI人机界面,工业软件等。
西门子S7系列PLC体积小、速度快、标准化,具有网络通信能力,功能强,可靠性高。S7系列PLC产品可分为微型PLC(如S7-200),小规模性能要求的PLC(如S7-300)和中、高性能要求的PLC(如S7-400)等。
1.SIMATIC S7-200 PLC
S7-200 PLC是小型化的PLC,它适用于各行各业,各种场合中的自动检测、监测及控制等。S7-200 PLC的强大功能使其无论单机运行,或连成网络都能实现复杂的控制功能。
S7-200PLC可提供4个不同的基本型号与8种CPU可供选择使用。
2.SIMATIC S7-300 PLC
S7-300是模块化小型PLC系统,能满足中等性能要求的应用。各种单的模块之间可进行广泛组合构成不同要求的系统。与S7-200 PLC比较,S7-300 PLC采用模块化结构,具备高速(0.6~0.1μs)的指令运算速度;用浮点数运算比较有效地实现了为复杂的算术运算;一个带标准用户接口的软件工具方便用户给所有模块进行参数赋值;方便的人机界面服务已经集成在S7-300操作系统内,人机对话的编程要求大大减少。SIMATIC人机界面(HMI)从S7-300中取得数据,S7-300按用户的刷新速度传送这些数据。S7-300操作系统自动地处理数据的传送;CPU的智能化的诊断系统连续系统的功能是否正常、记录错误和系统事件(例如:时,模块换,等等);多级口令保护可以使用户高度、有效地保护其技术机密,防止未经允许的复制和修改;S7-300 PLC设有操作方式选择开关,操作方式选择开关像钥匙一样可以拔出,当钥匙拔出时,就不能改变操作方式,这样就可防止非法或改写用户程序。具备强大的通信功能,S7-300 PLC可通过编程软件Step 7的用户界面提供通信组态功能,这使得组态非常容易、简单。S7-300 PLC具有多种不同的通信接口,并通过多种通信处理器来连接AS-I总线接口和工业以太网总线系统;串行通信处理器用来连接点到点的通信系统;多点接口(MPI)集成在CPU中,用于同时连接编程器、PC机、人机界面系统及其他SIMATIC S7/M7/C7等自动化控制系统。
S7-200PLC的外形结构
状态指示灯(LED)显示CPU所处的工作状态。
SF——System Fault(系统错误)
RUN——运行
STOP——停止
2.存储卡接口可以插入存储卡
3.通信接口可以连接RS-485总线的通信电缆
_ EMBED PBrush ___
4.**部端子盖下边为输出端子和PLC供电电源端子。输出端子的运行状态可以由**部端子盖下方一排指示灯显示,ON状态对应指示灯亮。
_ EMBED PBrush ___
5.底部端子盖下边为输入端子和传感器电源端子。输入端子的运行状态可以由底部端子盖上方一排指示灯显示,ON状态对应指示灯亮。
6.前盖下面有运行、停止开关和接口模块插座。将开关拨向停止位置时,PLC处于停止状态,此时可以对其编写程序。将开关拨向运行位置时,PLC处于运行状态,此时不能对其编写程序。将开关拨向(Term)状态,可以运行程序,同时还可以监视程序运行的状态。接口插座用于连接扩展模块,实现I/O扩展。
S7-200的接口模块
S7-200的接口模块主要有数字量I/O模块、模拟量I/O模块和通信模块。下面分别介绍这些模块。
(一)数字量I/O模块
数字量I/O模块是为了解决本机集成的数字量输入/输出点不能满足需要而使用的扩展模块。S7-200PLC目前总共可以提供3大类,共9种数字量I/O模块。
1.EM221数字量输入扩展模块
8DI,DC24V(直流输入)
2.EM222数字量输出扩展模块
8DO,DC24V(直流输出)
8DO,Relay(DC24V/ AC24~230V)(继电器输出)
3.EM223数字量混合模块
4DI(DC24V),4DO(DC24V/2A)
4DI(DC24V),4DO(Relay 2A)
8DI(DC24V),8DO(DC24V/2A)
8DI(DC24V),8DO(Relay 2A)
16DI(DC24V),16DO(Relay 2A)
16DI(DC24V),16DO(DC24V/2A)
(二)模拟量I/O模块
模拟量I/O模块提供了模拟量输入和模拟量输出的扩展功能。S7-200的模拟量扩展模块具有较大的适应性、可以直接与传感器相连,并有很大的灵活性,且安装方便。
1.EM231模拟量输入模块
4AI(电压或电流)输入信号的范围由SW1、SW2和SW3设定。
2.EM232模拟量输出模块
2AO(电压或电流)
3.EM235模拟量混合模块
4AI(电压或电流),量程由SW1~SW6设定
1AO(电压或电流)
(三)通信模块
S7-200系列PLC除了CPU226本机集成了两个通信口以外,其他均在其内部集成了一个通信口,通信口采用了RS-485总线。此外,各PLC还可以接入通信模块,以扩大其接口的数量和联网能力。
1.EM277模块
EM277模块是PROFIBUS-DP从站模块,同时也支持MPI从站通讯;
2.EM241:调制解调器(Modem)通讯模块
3.CP243-1:工业以太网通讯模块;
4.CP243-1 IT:工业以太网通讯模块,同时提供Web/E-mail等IT应用;
5.CP243-2:AS-Ⅰ主站模块,可连接多62个AS-Ⅰ从站。
S7-200PLC的配置就是由S7-200CPU和这些扩展模块构成的。
STEP7程序的使用简介
创建一个项目结构,项目就象一个文件夹,所有数据都以分层的结构存在于其中,任何时候你都可以使用。在创建一个项目之后,所有其他任务这个项目下执行。
2 组态一个站,组态一个站就是你要使用的可编程控制器,例如S7300、S7400等。
3 组态硬件,组态硬件就是在组态表中你的控制方案所要使用的模板以及在用户程序中以什么样的地址来访问这些模板,地址一般不用修改由程序自动生成。模板的特性也可以用参数进行赋值。
4 组态网络和通讯连接,通讯的基础是预先组态网络,也就是要创建一个满足你的控制方案的子网,设置网络特性、设置网络连接特性以及任何联网的站所需要的连接。网络地址也是程序自动生成如果没有改经验一定不要修改。
5 定义符号,可以在符号表中定义局部或共享符号,在你的用户程序中用这些具描述性的符号名替代地址。符号的命名一般用字母编写不过8个字节,好不要使用很长的汉字进行描述,否则对程序的执行有很大的影响。
6 创建程序,用梯形图编程语言创建一个与模板相连结或与模板无关的程序并存储。创建程序是我们控制工程的重要工作之一,一般可以采用线形编程(基于一个块内,OB1)、分布编程(编写功能块FB,OB1组织调用)、结构化编程(编写通用块)。我们常采用的是结构化编程和分布编程配合使用,很少采用线形编程。
7 下载程序到可编程控制器,完成所有的组态、参数赋值和编程任务之后,可以下载整个用户程序到可编程控制器。在下载程序时可编程控制器必须在允许下载的工作模式下(STOP或RUN-P), RUN-P模式表示,这个程序将一次下载一个块,如果重写一个旧的CPU程序就可能出现冲突,所以一般在下载前将CPU切换到STOP模式。
西门子PLC基本指令功能介绍
一、标准触点 LD、A、O、LDN、AN、ON、
LD,取指令。表示一个与输入母线相连的常开接点指令,即常开接点逻辑运算起始。
LDN,取反指令。表示一个与输入母线相连的常闭接点指令,即常闭接点逻辑运算起始。
A,与指令。用于单个常开接点的串联。
AN,与非指令。用于单个常闭接点的串联。
O,或指令。用于单个常开接点的并联。
ON,或非指令。用于单个常闭接点的并联。
二、正、负跳变 ED、EU
ED,在检测到一个正跳变(从OFF到ON)之后,让能流接通一个扫描周期。
EU,在检测到一个负跳变(从ON到OFF)之后,让能流接通一个扫描周期。
三、输出 =
=,在执行输出指令时,映像寄存器中的参数位被接通。
四、置位与复位指令S、R
S,执行置位(置1)指令时,从bit或OUT的地址参数开始的N个点都被置位。
R,执行复位(置0)指令时,从bit或OUT的地址参数开始的N个点都被复位。
置位与复位的点数可以是1-255,当用复位指令时,如果bit或OUT的是T或C时,那么定时器或计数器被复位,同时当前值将被清零。
五、空操作指令NOP
NOP指令不影响程序的执行,执行数N(1-255)。
西门子S7-1200系列订货数据
6ES7211-1BE31-0XB0 CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI
6ES7211-1AE31-0XB0 CPU 1211C DC/DC/DC,6输入/4输出,集成2AI
6ES7211-1HE31-0XB0 CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI
6ES7212-1BE31-0XB0 CPU 1212C AC/DC/Rly,8输入/6输出,集成2AI
6ES7212-1AE31-0XB0 CPU 1212C DC/DC/DC,8输入/6输出,集成2AI
6ES7212-1HE31-0XB0 CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI
6ES7214-1BG31-0XB0 CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI
6ES7214-1AG31-0XB0 CPU 1214C DC/DC/DC,14输入/10输出,集成2AI
6ES7214-1HG31-0XB0 CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI
6ES7215-1BG31-0XB0 CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO
6ES7215-1AG31-0XB0 CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO
6ES7215-1HG31-0XB0 CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO
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 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
6ES7217-1AG40-0XB0 CPU 1217C DC/DC/DC,14输入/10输出,集成2AI/2AO