S7-300编程步骤

合集下载

第七章 S7-300和S7-400PLC系统配置与编程

第七章 S7-300和S7-400PLC系统配置与编程

第7章S7-300和S7-400 PLC系统配置与编程本章的内容是向大家介绍西门子公司的SIMATIC S7-300和S7-400两个系列的PLC。

S7-300/400 PLC在结构上属于模块式结构,简单的说,一台完整的S7-300或者S7-400 PLC,是由基板(RACK)+ 各种模块组成的。

各种模块的选择,基于控制系统功能的需要,所有的模块安装在基板上,最终构成一台完整的PLC。

S7-300与S7-400的设计与编程通过STEP 7软件包来完成。

本章的主要内容:●S7-300与S7-400的系统配置●S7-300与S7-400的指令系统●S7-300与S7-400应用系统的编程本章重点是熟悉S7-300/400 系统的结构,了解S7-300与S7-400 PLC的各种模块的功能和特点;掌握STEP 7编程软件的基本知识和使用方法,从而具备设计开发S7-300或S7-400 PLC系统的能力。

7.1 S7-300 PLC和S7-400 PLC的系统配置7.1.1 S7-300 PLC的基本组成S7-300是模块式的PLC,它的组成部件主要有以下几个部分:1. 中央处理单元(CPU)各种CPU单元有不同的性能,有的集成有数字量和模拟量输入/输出点,而有的集成有PROFIBUS-DP等通信接口。

CPU面板上有状态故障显示灯、模式开关、24 V电源输入端子、电池盒与存储器模块盒(有的CPU没有)。

2. 负载电源模块(PS)负载电源模块用于将AC 220 V电源转换为DC 24 V电源,提供给CPU和I/O模块使用。

额定输出电流有2 A、5 A和10 A三种。

3. 信号模块(SM)数字量输入/输出模块和模拟量输入/输出模块的总称,它们使不同的过程信号电压或电流与PLC内部的信号电平匹配。

4. 功能模块(FM)用于对实时性和存储容量高的控制任务,例如高速计数器模块、快速/慢速进给驱动位置控制模块、步进电动机定位模块、伺服电动机定位模块、闭环控制模块、工业标识系统的接口模块、称重模块、位置输入模块等。

第6章 S7-300PLC指令系统及编程(1)

第6章 S7-300PLC指令系统及编程(1)
1、“与嵌套”指令
“与嵌套”指令用于电路块串联的编程。其指令格式如下: A( ——与嵌套开始指令 )——与嵌套结束指令
图6-6
2、“或嵌套”指令 “或嵌套”指令用于电路块并联的编程。其指令格式如下: O( ——或嵌套开始指令 )——或嵌套结束指令
图6-7
3、说明:先与后或(即电路元件先串后并)可不用嵌套指令中的 括号,如图6-8所示。
3.二分频器程序编写
图6-18 抢答器程序
二分频器是一种具有一个输入端和一个输出端的功能单元,输出频
率为输入频率的一半。实现二分频的方法有很多种,下面介绍其中
两种:
(1)利用“与”“或”指令实现二分频程序。 设输入为I1.0,输出为Q4.0,根据二分频要求I1.0接通2次,Q4.0只接
通1次。其波形如图6-19所示。
②复位/置位的LAD指令只能放在逻辑串的最右端,不能放在逻辑 串的中间,它们也属于输出指令。
③置位指令具有保持功能,即使指定位地址的“位”一直为1,直 到复位指令把它清零。
图6-11说明了复位/置位指令的用法。
图6-11
图6-11的程序中,只要I1.0一闭合,不论I1.0闭合后又断开,Q4.0 一直保持通电状态(1态,直到I2.0闭合且不论闭合后又断开,Q4.0 才断电(0态)。其功能同电动机的起停保控制电路类似。
验灯程序的编写很简单。在
PLC中用1个输入点如I3.7,其外 部连接一个常开按钮。由于I3.7 的内部触点是无数的,控制指示 灯输出点的梯形图上均并联1个 I3.7常开触点,当它闭合时指示 灯均亮,以查验灯的好坏。
2.利用触发器编写第一信号记录程序
图6-17 验灯程序
在工业现场一旦有故障发生可能随之带来多个故障,如果能找出

第5章S7-300PLC指令系统及编程(2)

第5章S7-300PLC指令系统及编程(2)

T STW
//将累加器1中的0~8位传送到状态字的相应位。
6.地址寄存器内容的装入和传送指令 S7-300PLC有两个地址寄存器,即AR1和AR2。对于地址寄存 器可以不经过累加器1而直接将操作数装入和传送,或直接交换两 个地址寄存器的内容。指令示例如表5-16、表5-17所示。 使用CAR指令可以交换地址寄存器AR1 和地址寄存器AB2的内 容,指令不需要指定操作数。指令的执行与状态位无关,而且对状 态字没有任何影响。
面举一个使用的例子,如图5-65 所示。图中绘出了梯形图方块 及对应语句表程序。
(三)双整数和实数间的转换 用户程序中有时需要整数相除,相除的结果可能小于0 ,由于这些 值只能用实数表示,所以需要转换到实数。此外,其他实数运算和 比较也会用到实数转换,实数是32 位数,一般整数要转换为实数时, 须先将整数转换为双整数后再进行。 1.双整数(32 位)转换为实数(32 位) 梯形图方块指令(DI _ R )和语句表指令(DTR )均列于表5-18 中最后一条。 2.实数(32 位)转换为双整数(32 位) 为简化介绍,用图5-66 统一表示转换方块,方块中上部字符如表 5-19所示。
装入指令和传送指令有三种寻址方式:立即寻址、直接寻址和间 接寻址。 1.立即寻址的装入与传送指令 操作数是指令操作或运算的对象,寻址方式是指令取得操作数的 方式,操作数可以直接给出或间接给出。立即寻址的操作数直接在 指令中,下面是使用立即寻址的例子。
2. 直接寻址的装入与传送指令 直接寻址在指令中直接给出存储器或寄存器的区域、长度和位 置,例如用MW200 指定位存储区中的字,地址为200;MBl00表示
例如,两个整数进行大于等于比较,其程序如图5-70所示。
由上例看出,方块比较指令在逻辑串中,可等效于一个常开触点。 如果比较结果为“真”,则该常开触点闭合(意味着电流可流过), 否则触点断开。由于比较指令的使用与触点类似,可以与其它触点 串联或并联,因此比较指令不能放在逻辑串的最后。 梯形图方块指令的输入和输出均为BOOL 数,可以取自I、Q 、 M 、D 、L 。被比较数IN1和IN2的数据类型与指令类型有关,且只 能在二个同类型数据间比较。

西门子 S7-300和S7-400语句表(STL)编程 说明书

西门子 S7-300和S7-400语句表(STL)编程 说明书

前言,目录 位逻辑指令 1 比较指令 2 转换指令 3 计数器指令 4 数据块指令 5 逻辑控制指令 6 整数运算指令 7 浮点数运算指令 8 装载和传送指令 9 程序控制指令 10 移位和循环移位指令 11 定时器指令 12 字逻辑指令 13 累加器指令 14附录所有语句表指令一览 A 编程举例 B 参数传递 CSIMATICS7-300和S7-400 语句表(STL )编程参考手册2006年3月版A5E00706960-01索引安全指南本手册包括应该遵守的注意事项,以保证人身安全及财产损失。

在本手册中,与人身安全有关的注意事项通过安全警告符号突出显示,而只与财产损失有关的注意事项则没有安全警告符号。

这些注意事项根据危险等级显示如下:危险表示若不采取适当的预防措施,将导致死亡或严重的人身伤害。

警告表示若不采取适当的预防措施,将可能导致死亡或严重的人身伤害。

小心带安全警告符号时,表示若不采取适当的预防措施,将导致轻微的人身伤害。

小心不带安全警告符号时,表示若不采取适当的预防措施,将造成财产损失。

注意如果不引起相应的重视,将会导致意外的结果或状态。

当出现多个安全等级时,应该采用最高危险等级的安全提示。

带安全警告符号的人员伤害警告也可能会导致财产损失。

合格人员只有合格人员才允许对设备/系统进行调试和操作。

合格人员规定为根据既定的安全惯例和标准,被授权对设备、系统和电路进行调试、接地和加装标签的人员。

正确使用请注意如下事项:警告该装置及其组件只能用于产品目录或技术说明书中所阐述的应用,并且只能与由西门子公司认可或推荐的第三方厂商提供的设备或组件一起使用。

本产品只有在正确的运输、贮存、设置和安装以及仔细地运行和维护的情况下,才能正确而安全地运行。

商标标有®的所有名称均为西门子公司的注册商标。

本文档中的其它一些标志也是注册商标,如果任何第三方出于个人目的而使用,都会侵犯商标所有者的权利。

郑重声明我们已核对过本手册的内容与所述硬件和软件相符。

实验指导书——S7-300编程示例

实验指导书——S7-300编程示例

S7-300 PLC的梯形图编程示例1 与、或、非、同或、异或与:只有当I0.0和I0.1都为1时,Q0.0才能为1。

或:只要I0.0和I0.1有一个为1,Q0.0为1。

非:当I0.0为1时,Q0.0为0。

同或:只有当I0.0和I0.1状态相同时,Q0.0才为1。

异或:只有当I0.0和I0.1状态不同时,Q0.0才为1。

2 启动和复位控制结构(自锁结构)I0.0接启动按钮,I0.1接复位(停止)按钮,灯接Q0.0构成自锁结构。

自锁结构也可以通过同时使用S指令和R指令来实现。

然而同时使用S指令和R指令时,存在一种隐患,请思考是什么隐患?为了避免这种隐患,可以使用SR或者RS触发器。

或者注意:此示例使用电动机启动与停止的控制作为例子,其实很多地方都可以使用到启动和复位控制结构,大家的思路要开阔,不要被例子所局限。

比如可以利用M区域的地址替代例子中的Q地址,实现在PLC内部某些位变量的锁存和复位。

3 自锁和互锁程序4 延时通断控制程序在PLC的实际应用中,延时通断通常可采用定时器(或计数器)来实现。

定时器的串联是用一个定时器启动另一个定时器,可以实现“长延时”控制。

定时器的并联可以使多个输出在不同的时刻接通,实现输出的顺序启动。

4.1 脉冲定时控制(SP定时器)SP定时器可以用定时线圈的形式实现:请结合指令帮助,体会SP定时器的工作方式。

4.2延时接通控制(SD定时器)SD定时器可以用定时线圈的形式实现:请结合指令帮助,体会SD定时器的工作方式。

也可以使用指令块的形式实现:4.3 延时断开控制(SF定时器)延时断开控制可以用定时线圈实现:请结合指令帮助,体会SD定时器的工作方式。

4.4 顺序延时接通控制顺序延时接通是指多个被控对象相隔一定的时间,有顺序地依次起动。

实现这种控制的程序很多,例如,利用多个定时器:或者利用计数器加系统的时钟存储器实现:其中M100.5是CPU时钟位,周期为1S,在硬件组态的CPU属性中设置,如下图所示:表:时钟存储器各位的周期及频率位 7 6 5 4 3 2 1 0 周期/s 2 1.6 1 0.8 0.5 0.4 0.2 0.1 频率/Hz0.5 0.625 1 1.25 2 2.5 5 10注意:①系统的时钟存储器中各位的频率是固定的,无法更改。

S7-300的指令系统及编程

S7-300的指令系统及编程


1.置位/复位线圈指令

2.置位/复位双稳态触发器指令

如果置位输入端为“1”,复位输入 端为“0”,则触发器被置位。此后,即 使置位输入端为0,触发器也保持置位不 变。

如果复位输入端为1,置位输入端为 “0”,则触发器被复位。

置位优先型RS触发器的R端在S端 之上,当两个输入端都为1时,下面的置 位输入端最终有效。既置位输入优先, 触发器被置位。
语句表(STL)语言如下: A I 1.0 A I 1.1 O A I 1.2 A I 1.3 = Q 3.1

3.1.2 置位/复位指令

置位/复位指令根据RLO的值,来决 定被寻址位的信号状态是否需要改变。

若RLO的值为1,被寻址位的信号状 态被置1或清0;若RLO是0,则被寻址位 的信号保持原状态不变。

令;
4.S7-300移位指令; 5.累加器操作和地址寄存器操作指 6.控制指令; 7.S7-300的系统功能模块简介。


3.1
位逻辑指令
3.2
数据传送与转换指令
3.3
运算指令
3.4
移位指令
3.5
累加器操作和地址寄存器操作指令
3.6
控制指令
3.7
S7-300的系统功能模块简介
3.8

在S7-300中,计数器区为512个字 节(byte),因此最多允许使用256个计 数器。 计数器的第0~11位存放BCD码格式的计 数值,三位BCD码表示的范围是0~999。 第12~15位保留,如图3-20所示。
图3-20
计数器图示

S7中的计数器用于对RLO正跳沿计 数。S7中有三种计数器,它们分别是加 计数器、减计数器和可逆计数器。只要 计数器的计数值不是“0”,计数器的输 出就为“1”。

西门子S7-300全教程第三章

第三章西门子PLC的指令系统3.1 S7-300/400的编程语言3.1.1 PLC编程语言的国际标准IEC 61131是PLC的国际标准,1992~1995年发布了IEC 61131标准中的1~4部分,我国在1995年11月发布了GB/T 15969-1/2/3/4(等同于IEC 61131-1/2/3/4)。

IEC 61131-3广泛地应用PLC、DCS和工控机、―软件PLC‖、数控系统、RTU等产品。

定义了5种编程语言1) 指令表IL(Instruction list):西门子称为语句表STL。

2) 结构文本ST(Structured text):西门子称为结构化控制语言(SCL)。

3) 梯形图LD(Ladder diagram):西门子简称为LAD。

4) 功能块图FBD (Function block diagram):标准中称为功能方框图语言。

5) 顺序功能图SFC(Sequential function chart):对应于西门子的S7 Graph。

3.1.2 STEP 7中的编程语言梯形图、语句表和功能块图是3种基本编程语言,可以相互转换。

1.顺序功能图(SFC) :STEP 7中的S7 Graph2.梯形图(LAD):直观易懂,适合于数字量逻辑控制。

―能流‖(Power flow)与程序执行的方向。

3. 语句表(STL):功能比梯形图或功能块图强。

4.功能块图(FBD):―LOGO!‖系列微型PLC使用功能块图编程。

5.结构文本(ST):STEP 7的S7 SCL(结构化控制语言)符合EN 61131-3标准。

SCL适合于复杂的公式计算、复杂的计算任务和最优化算法,或管理大量的数据等。

6.S7 HiGraph 编程语言图形编程语言S7 HiGraph 属于可选软件包,它用状态图(state graphs)来描述异步、非顺序过程的编程语言。

7.S7 CFC 编程语言可选软件包CFC(Continuous Function Chart,连续功能图)用图形方式连接程序库中以块的形式提供的各种功能。

电器控制与PLC技术应用 第5章 S7-300的指令系统及编程


2、计数器指令的功能框表示形式
加计数器
减计数器
可加/减计数器
3、 计数器线圈指令
LAD指令 STL指令 L C#... S C no. CU Cno. 功 能 该指令为计数器置初始值。当RLO有上升沿时,将预置值十进制数 (格式为C#...)装入累加器1中作为计数器的当前值。 加计数,程序运行时RLO没有一个上升沿时,计数值加1,若达上限 999时,停止加计数。 减计数,程序运行时RLO没有一个上升沿时,计数值减1,若达下限 0时,则停止减计数。
• 5.2.3 跳变沿检测指令
当信号状态发生变化时就产生跳变沿。指令格式见表5-3。
表5-3 跳变沿检测指令
对RLO跳变沿检测的指令 LAD指令 STL指令 FP <位地址> 功 能 存储区
RLO正跳沿检测,位地址用于存放需要检测的 RLO的上一扫描周期值,当RLO值由0变化到1时, 输出接通一个扫描周期。 Q、M、D
第5章

S7-300的指令系统及编程
STEP 7是与西门子公司SIMATIC S7系列PLC相配 套的支持用户开发应用程序的软件包,在STEP 7中, S7系列PLC常用的编程语言有:LAD(梯形图)、 STL(语句表)、FBD(功能块图)等。只有当编 程语言选择为LAD时,在编程环境中,选择主菜单 的Insert项的Program Elements,则编辑环境的左 面出现了指令树窗口,右面出现了用户程序窗口, 在指令树窗口中涵盖了S7-300的所有常用梯形图指 令,用户可以采用双击或拖拽的方式应用到用户程 序的需要处,即用户可以利用指令树窗口的指令在 用户程序窗口中绘制所需的梯形图程序。如图5-1所 示。其他两种常用的编程语言不提供指令帮助。
3. 装入时间值或计数值 4. 地址寄存器装入和传送 5、梯形图方块传送指令

S7-300梯形图编程实例

编程实例概述实际应用本手册中描述的每个梯形图指令都会触发一个特定操作。

将这些指令组合到一个程序中时,便可完成多种自动化任务。

本章提供梯形图指令实际应用的以下实例:•控制传送带 - 使用位逻辑指令•检测传送带的移动方向 - 使用位逻辑指令•生成时钟脉冲 - 使用定时器指令•跟踪存储空间 - 使用计数器和比较指令•使用整数数学运算指令解决问题•设置加热烘炉的时间长度使用的指令助记符程序元素目录描述WAND_W字逻辑指令(字)与运算WOR_W字逻辑指令(字)或运算--- ( CD )计数器降值计数器线圈--- ( CU )计数器升值计数器线圈---( R )位逻辑指令重置线圈---( S )位逻辑指令置位线圈---( P )位逻辑指令RLO上升沿检测ADD_I浮点指令整数加DIV_I浮点指令整数除MUL_I浮点指令整数乘CMP <=I, CMP >=I比较比较整数枛| |枛位逻辑指令常开触点枛| / |枛位逻辑指令常闭触点枛( )位逻辑指令输出线圈---(JMPN)跳转若非则跳转---(RET)程序控制返回MOVE传送分配值---( SE )定时器扩展脉冲定时器线圈解决数学问题解决数学实例程序显示了如何使用三个整数数学运算指令来产生与下列方程式相同的结果:MW4 = ((IW0 + DBW3) x 15) / MW0梯形图程序程序段1:打开数据块DB1。

程序段2:输入字IW0加到共享数据字DBW3(必须定义和打开数据块),总和被载入存储器字MW100。

然后,MW100乘以15,结果存储到存储器字MW102中。

MW102除以MW0,结果存储到MW4中。

带计数器和比较器的存储区域下图显示了具有两个传送带且在传送带之间有临时存储区域的系统。

传送带1将包裹传送到存储区域。

存储区域附近的传送带1末端的光电屏障确定向存储区域传送的包裹数量。

传送带2会将包裹从临时存储区域传输到装载码头,而卡车在此将包裹发送给客户。

玩转S7-300编程(28工控老鬼新浪微博)

S7-300/400PLC编程之1 OB块使用指南【工控老鬼】S7-300/400PLC编程之1 OB块使用指南【工控老鬼】S7-300/400PLC编程之2 PLC暖启动和冷启动【工控老鬼】S7-300/400PLC编程之3 模拟量处理【工控老鬼】++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S7-300/400PLC编程之4 检测导致CPU停机的故障【工控老鬼】S7-300/400PLC编程之4 检测导致CPU停机的故障【工控老鬼】什么是诊断诊断指的是S7-300/400内部集成的识别和记录功能。

记录错误信息的区称为诊断缓冲区。

这个区的大小有赖于CPU型号 (例如:CPU 314 = 100个信息)。

当有错误时如果一个错误或事件发生时,例如:模式转换。

将发生如下事件:将发生什么?•标有时间和日期的信息被保存到诊断缓冲区中。

最近的信息保存到缓冲区的开始。

如果缓冲区满,最旧的信息将覆盖。

•将事件记入系统的状态表中。

•如果必要,将激活一个相关的错误 OB(组织块)。

错误的类型利用CPU的诊断功能,可以识别下面的错误:• CPU或模板中的系统错误• CPU中的程序错误排除故障的手段针对下列故障,应采用不同的手段予以排除:•导致CPU停机的故障,应使用“Module Information”工具。

•逻辑错误,即程序可执行但功能不能实现,应使用“Referece Data”和“Program Status”工具。

•偶尔出现的故障,即只在特定的系统状态下才出现的故障,它可能导致停机或逻辑错误。

可采用“CPU Messages”工具或生成自定义触发点“your own trigger point”。

S7-300/400PLC编程之5 符号使用指南【工控老鬼】S7-300/400PLC编程之5 符号使用指南【工控老鬼】在大家使用step7编程的时候,经常会使用到符号表功能,高效的使用符号表功能可以大大的提高编程的效率,对符号表的使用方法,工控老鬼总结如下!希望对大伙有所帮助!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ S7-300/400PLC编程之6 定时器指令【工控老鬼】在大家使用step7编程的时候,经常会使用定时器指令功能,熟练的掌握定时器指令功能可以帮助我们构造很完善的算法,对定时器指令使用方法,工控老鬼总结如下!希望对大伙有所帮助!之前讲过,可以使用S7-300PLC CPU里自带的标准时钟脉冲来做很多功能,这里我来分享一个例子,如何使用定时器功能来做任意时间间隔的标准时钟脉冲!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S7-300/400PLC编程之7 工程应用中的信号防抖处理技巧【工控老鬼】S7-300/400PLC编程之7 工程应用中的信号防抖处理技巧【工控老鬼】++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S7-300/400PLC编程之8 关于OB1的思考【工控老鬼】S7-300/400PLC编程之8 关于OB1的思考【工控老鬼】使用西门子S7-300/400PLC的朋友一定对Step7都不陌生,同时你们也应该对OB1如数家珍,因为你不可能不用到它,它是你的好兄弟!但是我却发现很多的朋友对它的了解还是不够深入,老鬼今天我就简单的给大家分享一下OB1的几个功能!1、信息知多少?打开OB1,在局部数据区域内,是否发现有一些系统自定义的局部变量?没错!有很多,不清楚?那就了解一下吧!2、下表描述了OB1的临时(TEMP)变量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档