S7-300/400PLC的编程技术 河北机电自动化教研室.

Slides:



Advertisements
Similar presentations
1 1.2 信息的表示与存储  数据:数据是对客观事物的符号表示。 如,数值、文字、语言、图形、图像等都是不同形 式的数据。  信息:信息是既是对客观事物变化和特征的反映,又 是事物之间相互作用、相互联系的表征。 信息必须数字化编码,才能用计算机进行传送、存 储和处理。 信息具有针对性和时效性。
Advertisements

------课题(一) :PLC控制系统设计
计算机基础 第一章 计算机基础知识 机电系计算机教研室
智力測驗 答題技巧及經驗談.
第10章 电气控制技术 10.1 常用低压电器 10.2 三相异步电动机继电-接触控制电路 *10.3 可编程控制器
中醫理論與芳香療法2 居家精油.
第十一章 毕生发展.
《马克思主义基本原理概论》 第四章  资本主义的形成及其本质.
松青超市之經營型態分析討論 組員:蕭鈺穎 趙俊彥.
這是全班幼兒一起進行團體討論、分享、常規教學、新聞報導及全體共同經驗的活動,因此場地以能容納所有幼兒為主。
1.6 中国人口迁移.
主讲人:王燕超 时间:2013年12月11日 地点:310 (报告厅)
第2章 PLC的结构及编程软件的使用 学习内容 S7-200系列PLC的外部结构 S7-200系列PLC的性能 PLC的编程语言与程序结构
凉山州2015届高考情况分析 暨2016届高三复习建议 四川省凉山州教育科学研究所 谌业锋.
TIA 博途V12 STEP 7 V12 (LAD, FBD, STL)编程.
高考历史答题 技巧与方法.
M340可编程控制器技术培训课程 -编程软件篇.
第3章 S7-200可编程序控制器 3.1 S系列PLC发展概述 3.2 S7-200 PLC系统组成 3.3 编程元件及程序知识
本课件是由精确校对的word书稿制作的“逐字编辑”课件,如需要修改课件,请双击对应内容,进入可编辑状态。
PLC程序设计及调试 1. 编程工具Programming Tool PLC PLC接口信号与输入输出信号
课标版 政治 第一课 美好生活的向导.
95年度... 油品行銷事業部五股供油中心桃園煉油廠~汐止市內溝溪管線詳細路徑示意圖 紅藍綠三色線條為管線路徑 TS 2017/9/13
可编程序控制器原理及应用 宫淑贞 王东青 徐世许 编著 主要参考书 《可编程序控制器原理与程序设计》 《可编程序控制器原理 应用 网络》
第8章 继电接触控制系统.
可编程序控制器应用 王如松.
FC OB1 FB SFC 操作系统 SFB OBs 结构化编程 其它
PLC在工业中的应用.
9、SIMATIC S7-300 PLC及指令系统 9.1 系统组成 9.2 系统配置 9.3 指令系统简介 9.4 程序结构
第5章 状态转移图及编程方法 5.1 状态转移图及状态功能 5.2 单流程状态转移图的编程 5.3 选择性分支与汇合的编程
第7章 PLC应用系统设计及实例 本章要点 PLC应用系统设计的步骤及常用的设计方法 应用举例 PLC的装配、检测和维护.
T9系列PLC介绍 T9系列PLC是腾控科技研发的基于以太网通信的宽温型以太网可编程控制器
S7-300PLC的硬件 自动化教研室.
电器控制与PLC技术 总体时间安排 电器控制部分:30学时 PLC及应用部分:38学时 其中:授课28学时、实验10学时
结构化编程 FC OB1 FB SFC 操作系统 SFB OBs 其它
电气控制及PLC技术 电气工程学院 自动化系 杨霞 2018年1月.
软件调试 目录 页 软件调试的检查表 下装用户程序到 CPU 排除停机错误 系统功能测试的步骤 记录程序的修改 项目文件的归档
组织块 操作系统 OB1 FC FB FB FC SFC SFB OBs 其它 目录 页码
崔坚 西门子自动化与驱动集团 客户支持部CS2 热线电话:
第1章 PLC工作原理 本章主要讲解… 一、可编程控制器概述 二、可编程控制器的基本原理 三、可编程控制器的组成 四、可编程控制器的性能指标.
第二章 Modicon Micro PLC 的结构及基本指令
PLC基础知识 基本内容: PLC简介、基本功能、特点、应用范围、工作方式。 重点: 定义、基本功能、工作方式。 难点:
第5章 S7系列程序结构与程序设计 5.1 编程方式与程序块 5.2 数据块与数据结构 5.3 S7系列PLC程序设计 思考与练习题.
第七章 故障诊断 PLC是运行在工业环境中的控制器,一般而言可靠性比较高,出现故障的概率较低,但是,出现故障也是难以避免的。一般引发故障的原因有很多,故障的后果也有很多种。 引发故障的原因虽然我们不能完全控制,但是我们可以通过日常的检查和定期的维护来消除多种隐患,把故障率降到最低。故障的后果轻的可能造成设备的停机,影响生产的数量;重的可能造成财产损失和人员伤亡,如果是一些特殊的控制对象,一旦出现故障可能会引发更严重的后果。
浙江省教育科学规划课题管理系统 2015年新版申请人培训手册
6 S7-200可编程控制器 指令集 2019/1/2 PLC指令集.
第七章 传 热 Chapter 7 Heat Transfer.
賴氏人格測驗 結果解說 文輔室.
永宏PLC --FB-PLC【基礎功能篇 】
第1章 基础知识 1.1 微型计算机中数的表示 1.2 二进制编码 1.3 二进制数的运算.
第三章 PLC基础 掌握PLC工作原理、结构特点。 熟悉基本逻辑指令、顺序控制指令及常用的功能指令。 具备PLC应用系统设计初步能力。
課程地圖 可編程序控制器 (PLC) 高 階 可編程序控制器 (PLC) 進 階 控制線路 進 階 可編程序控制器 (PLC)
Horner Tianjin Automation Technology LTD
数据块中的数据存储 目录 页 目标 …… 数据存储区 … ……… 数据块 (DB) … STEP 7数据类型概述 STEP 7基本数据类型
微机原理与接口技术 西安邮电大学计算机学院 王忠民.
第一章.
基础篇 微型计算机系统 硬件系统 软件系统 操作系统基础 作业 计算机编码和数制 系统综述.
燃气调压器流量计算及相关讨论 作者:刘剑 穆宁.
《 PLC应用技术》讲稿 第四章 开关量逻辑控制 赵金荣 编制.
第二节 山地的形成.
位指令 I0.0 I0.1 Q 8.0 Q 8.1 I 1.0 ( MCR< ) (MCRA) Q 8.0 I 0.0 I 1.1
本节内容 进制运算 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
3 可编程控制器及其应用 可编程控制器是以中央处理器为核心,综合计算机和自动控制等先进技术而发展起来的一种工业控制器。
第5章 S7-200 PLC编程软件及应用 5.1 编程软件系统概述 5.2 STEP 7-Micro/WIN 32软件功能
第4章 S7-200的功能指令 4.1 功能指令概述 4.2 数据处理指令 4.3 数学运算指令 4.4 程序控制指令
数据块中的数据存储 目录 页 数据存储区 … ……… 数据块 (DB) … STEP 7数据类型概述 STEP 7基本数据类型
第二章 PLC的编程语言.
步進階梯應用 步進階梯指令(STL) 、(RET) STL [S1] :步進階梯開始 ( ) 指令長度: 1 Step
情境4:运料小车的PLC控制 4.1任务资讯 4.2任务分析 4.3任务决策 4.4任务计划 4.5任务实施 4.6评价提高 S7-200
第三章 可编程控制器概述 第一节 可编程控制器的定义 一、什么是可编程序控制器? 1、什么是可编程序控制器?
测试功能 目录 页 程序的状态监视功能 ……………... 2 程序状态监视的模式 …………………………. 3
Presentation transcript:

S7-300/400PLC的编程技术 河北机电自动化教研室

编程语言与数据类型 1 编程语言 STEP-7是S7-300/400系列PLC的编程软件。梯形图、语句表 (即指令表)和功能块图是标准的STEP-7软件包配备的3种基本编程语言,这3种语言可以在STEP-7中相互转换。

1 顺序功能图(SFC) 这是一种位于其他编程语言之上的图形语言,用来编制顺序控制程序,STEP-7中的S7 Graph顺序控制图形编程语言属于可选的软件包。在这种语言中,工艺过程被划分为若干个顺序出现的步,步中包含控制输出的动作,从一步到另一步的转换由转换条件控制。用Graph表达复杂的顺序控制过程非常清晰,用于编程及故障诊断更为有效,使PLC程序的结构更加易读,它特别适合于生产制造过程。S7 Graph具有丰富的图形、窗口和缩放功能。系统化的结构和清晰的组织显示使S7 Graph对于顺序过程的控制更加有效。

2 梯形图(LAD) 梯形图是使用得最多的PLC图形编程语言。梯形图与继电器电路图很相似,具有直观易懂的优点,特别适合于数字量逻辑控制。梯形图由触点、线圈和用方框表示的指令框组成。触点代表逻辑输入条件,例如外部的开关、按钮和内部条件等。线圈通常代表逻辑运算的结果,常用来控制外部的指示灯、交流接触器和内部的标志位等。指令框用来表示定时器、计数器或者数学运算等附加指令。 使用编程软件可以直接生成和编辑梯形图,并将它下载到PLC。

触点和线圈等组成的独立电路称为网络(Network),如下图所示,编程软件自动为网络编号。

用户可以在网络号右边加上网络的标题,在网络号的下面为网络加上注释。还可以选择在梯形图下面自动加上该网络中使用的符号的信息。 梯形图中的触点和线圈可以使用物理地址,例如I0.1,Q0.3等。如果在符号表中对某些地址定义了符号,例如令I0.1的符号为“起动”,在程序中可用符号地址“起动”来代替物理地址I0.0,这样使程序易于阅读和理解。 用户可以在网络号右边加上网络的标题,在网络号的下面为网络加上注释。还可以选择在梯形图下面自动加上该网络中使用的符号的信息。 在分析梯形图中的逻辑关系时,为了借用继电器电路图的分析方法,可以想象在梯形图的左有两侧垂直“电源”之间有一个左正右负的直流电源电压,有一个假想的“能流”(PowerFlow)流过线圈。利用能流这一概念,可以很好地理解和分析梯形图,能流只能从左向右流动。

3 语句表(STL) S7系列PLC将指令表称为语句表(Statement List),它是一种类似于微机的汇编语言中的文本语言,多条语句组成一个程序段。语句表比较适合经验丰富的程序员使用,可以实现某些不能用梯形图或功能块图表示的功能。

4)功能块图(FBD) 功能块图(FBD)使用类似于布尔代数的图形逻辑符号来表示控制逻辑。一些复杂的功能用指令框来表示,功能块图用类似于与门、或门的方框来表示逻辑运算关系。 5)结构文本(ST) 结构文本(ST)是为IEC61131-3标准创建的一种专用的高级编程语言。 STEP-7的S7 SCL(结构化控制语言)是符合lEC61131-3标准的高级文本语言。它的语言结构与编程语言Pascal和C相似,所以特别适合于习惯使用高级编程语言的人使用。

图形编程语言S7 HiGraph属于可选软件包,它用状态图(State Graphs)来描述异步、非顺序控制过程的编程语言。 7)S7 CFC编程语言 可选软件包CFC(Continuous Function Chart,连续功能图)用图形方式连接程序库中以块的形式提供的各种功能,包括从简单的逻辑操作到复杂的闭环和开环控制等领域。编程时将这些块复制到图中并用线连接起来即可。

位数据的数据类型为BOOL(布尔)型,在编程软件中BOOL变量的值1和0常用英语单词TURE(真)和FALSE(假)来表示。 基本数据类型 (1)基本数据类型;(2)用户通过组合基本数据类型生成的复合数据类型; (3)可用来定义传送FB(功能块)和FC(功能)参数的参数类型。 下面介绍STEP7的基本数据类型: 1)位(bit) 位数据的数据类型为BOOL(布尔)型,在编程软件中BOOL变量的值1和0常用英语单词TURE(真)和FALSE(假)来表示。 位存储单元的地址由字节地址和位地址组成,例如I3.2中的区域标示符“I”表示输入(Input),字节地址为3,位地址为2,如图所示。这种存取方式称为“字节.位”寻址方式。输入字节IB3(B是Byte的缩写)由I3.0~I3.7这8位组成。

位数据的表示

8位二进制数组成1个字节(Byte,如下图,其中的第0位为最低位(LSB),第7位为最高位(MSB)。

3)字(Word) 相邻两个字节组成一个字,字用来表示无符号数。MWl00是由MB1OO和MB1O1组成的1个字,如图5.4.3,MB00为高位字节。MW100中的M为区域标示符,W表示字,100为字的起始字节MB1O0的地址。字的取值范围为W#16#0000~W#16#FFFF。 4) 双字(Double Word) 两个字组成1个双字,双字用来表示无符号数。MD100是由MB100~MB103组成的1个双字,(见上图),MB100为高位宇节,D表示双字,100为双字的起始字节MB100的地址。双字的取值范围为DW#16#0000_0000~DW#16#FFFF_FFFF。

常数值可以是字节、字或双字,CPU以二进制方式存储常数,常数也可以用十进制、十六进制、ASCII码或浮点数形式来表示。 常数的表示方法 常数值可以是字节、字或双字,CPU以二进制方式存储常数,常数也可以用十进制、十六进制、ASCII码或浮点数形式来表示。

C#为计数器常数(BCD码),例如C#250。 B#16#,W#16#,DW#16#分别用来表示十六进制字节、字和双字常数。2#用来表示二进制常数,例如2#1101_1010。 L#为32位双整数常数,例如L# +5。 P#为地址指针常数,例如P#M2.O是M2.0的地址。 S5T#是16位S5时间常数,格式为S5T# aD_bH_cM_dS_eMS。其中a,b,c,d,e分别是日、小时、分、秒和毫秒的数值。输入时可以省掉下划线,例如S5T#4S30MS=4s30ms,S5T#2H15M30S=2小时15分30秒。 C#为计数器常数(BCD码),例如C#250。

状态字 状态字用于表示CPU执行指令时所具有的状态。某些指令可否执行或以何种方式执行可能取决于状态字中的某些位,指令执行时也可能改变状态字中的某些位,可以用位逻辑指令或字逻辑指令访问并检测状态字。状态字的结构如图所示。

逻辑操作结果(RLO) 状态字的第1位称为逻辑操作结果(Result of Logic Operation,RLO)。该位存储逻辑操作指令或比较指令的结果。在逻辑串中,RLO位的状态表示有关信号流的信息,RLO的状态为1,表明有信号流 (通),RLO的状态为0,表明无信号流(断)。可用RLO触发跳转指令。 溢出位(OV) 状态字的第4位称为溢出位。当算术运算或浮点数比较指令执行时出现错误(溢出、非法操作、不规范格式)时,OV位被置1,如果执行结果正常,该位被清0。

状态字的第7位和第6位称为条件码1和条件码0。这两位结合起来用于表示在累加器1中产生的算术运算结果与0的大小关系, 条件码l(CCl)和条件码0(CC0) 状态字的第7位和第6位称为条件码1和条件码0。这两位结合起来用于表示在累加器1中产生的算术运算结果与0的大小关系, 表1 算术运算后的CC1和CC0

表2 比较、移位、字逻辑指令后的CCl和CC0

寻址方式 所谓寻址方式是指指令得到操作数的方式,可以直接或间接给出操作数的地址。STEP-7有4种寻址方式:立即寻址、存储器直接寻址、存储器间接寻址和寄存器间接寻址。 1 立即寻址 立即寻址是对常数或常量的寻址万式,其特点是操作数直接包含在指令中,或者指令的操作数是惟一的。例如: SET // 将RLO置1 AW W#16#117 //将常数W#16#117与累加器1进行“与”逻辑运算 L 43 //将整数43装入累加器1中

存储器直接寻址的特点是直接给出操作数的存储单元地址。例如 2 存储器直接寻址 存储器直接寻址的特点是直接给出操作数的存储单元地址。例如 O I0.2 //对输入位I0.2进行“或”逻辑运算 R Q4.0 //将输出位Q4.0清“0” = Ml.1 //使Ml.1的内容等于RLO的内容 L Cl //将计数器Cl中的计数值装入累加器1 T MW6 //将累加器1中的内容传送给MW6

3 存储器间接寻址 存储器间接寻址的特点是用指针进行寻址。操作数存储在由指针给出的存储单元中,根据要描述的地址复杂程度,地址指针可以是字或双字的,存储指针的存储器也应是字或双字的。对于T,C,FB,FC,DB,由于其地址范围为0~65535,可使用字指针;对于I,Q,M等,可能要使用双字指针。使用双字指针时,必须保证指针中的位编号为“0”。存储器间接寻址的指针格式如图所示。

存储器间接寻址的指针格式

T WM1 //将累加器1的内容传送给存储器MWl 例 存储器间接寻址的指针格式及寻址 L +6 //将整数6装入累加器1 T WM1 //将累加器1的内容传送给存储器MWl OPN //打开由MWl指出的数据块,即打开数据块DB6 T MD5 //将累加器1的内容传送到存储器MD5 A I[MDl] //对输入位I8.7进行逻辑“与”操作 = Q[MD5] //将RLO赋值给输出位Q12.7

4 寄存器间接寻址 地址寄存器的内容加上偏移量形成地址指针,指向操作数所在的存储单元。 4 寄存器间接寻址 寄存器间接寻址的特点是通过地址寄存器寻址。S7中有两个地址寄存器:ARl和AR2, 地址寄存器的内容加上偏移量形成地址指针,指向操作数所在的存储单元。 寄存器间接寻址有两种形式:区域内寄存器间接寻址和区域司寄存器间接寻址。寄存器间接寻址的指针格式如图所示。

寄存器间接寻址的指针格式

地址指针区域标识位的含义 使用寄器指针格式访问一个字节、字或双字时,必须保证指针中位地址的编号为0。

LAR1 //将累加器1中的内容送到地址寄存器1 下面是区间间接寻址的例子: L P#5.0 //将间接寻址的指针装入累加器1 LAR1 //将累加器1中的内容送到地址寄存器1 A M[AR1,P#2.3] //AR1中的P#5.0加偏移量P#2.3,实际上是对M7.3进行操作 = Q[AR1,P#0.2] //逻辑运算结果送Q5.2 L DBW[AR1,P#18.0] //将DBW23装入累加器1

L P#M6.0 //将存储器位M6.0的双字指针装入累加器1 下面是区域间间接寻址的例子: L P#M6.0 //将存储器位M6.0的双字指针装入累加器1 LAR1 //将累加器1中的内容送到地址寄存器1 T W[AR1,P#50.0] //将累加器1的内容传送到存储器字MW56

基本指令及其编程 1、位逻辑指令

位逻辑指令

状态寄存器触点 在S7-300/400PLC中,CPU中有一个专门用于存储指令执行状态的16位状态寄存器,状态寄存器以二进制位的形式保存指令的执行结果与中间状态等,在梯形图编程时,这些标志可以用触点的形式在梯形图中使用与编程,S7-300/400PLC可以使用的状态寄存器触点如下表所示。

状态寄存器触点

1、“与”(A)、“与非”(AN) A:“与”指令适用于单个常开触点串联,完成逻辑“与”运算。

由图可知,触点串联指令也用于串联逻辑行的开始。CPU对逻辑行开始第1条语句如I1. 0的扫描称为首次扫描。首次扫描的结果(I1 由图可知,触点串联指令也用于串联逻辑行的开始。CPU对逻辑行开始第1条语句如I1.0的扫描称为首次扫描。首次扫描的结果(I1.0的状态)被直接保存在RLO(逻辑操作结果位)中;在下一条语句,扫描触点Q5.3的状态,并将这次扫描的结果和RLO中保存的上一次结果相“与”产生的结果,再存入RLO中,如此依次进行。在逻辑串结束处的RLO可作进一步处理。如赋值给Q4.2(=Q4.2).

2 、“或”(O)、“或非”(ON) O:“或”指令适用于单个常开触点并联,完成逻辑“或”的运算。

此外,还有“异或”(X)、“异或非”(XN)、嵌套指令等等。 由图可知,触点并联指令也用于一个并联逻辑行的开始。CPU对逻辑行开始第1条语句如I4.0的扫描称为首次扫描。首次扫描的结果(I4.0的状态)被直接保存在RLO(逻辑操作结果位)中,并和下一条语句的扫描结果相“或”,产生新的结果再存入RLO中,如此一次进行。在逻辑串结束处的RLO可用作进一步处理,如赋值给Q8.0(=Q8.0). 此外,还有“异或”(X)、“异或非”(XN)、嵌套指令等等。

3、输出线圈 输出线圈指令即逻辑串输出指令,又称赋值指令,该指令把RLO中的置赋给指定的位地址,当RLO变化时,相应位地址信号状态也变化 ,在LAD中,只能将输出指令放在触点电路的最右端,不能将输出指令单独放在一个空网络中。下图是两个应用举例。

4、中间输出 如图所示,中间输出指令被安置在逻辑串中间,用于将其前面的位逻辑操作结果(即本位置的RLO值)保存到指定地址,所以有时也称为“连接器”或“中间赋值元件”。它和其他元件串联时,“连接器”指令和触点一样插入。连接器不能直接连接母线,也不能放在逻辑串的结尾或分支结尾处。

5 置位指令、复位指令 置位/复位指令也是一种输出指令。使用置位指令时,如果RLO=1,则指定的地址被置为1,而且一直保持,直到被复位为0。使用复位指令时,如果RLO=1,则指定的地址被复位为0,而且一直保持,直到被置位为1,如图所示。

6 触发器指令 触发器有置位复位触发器(SR触发器)和复位置位触发器(RS触发器)两种,这两种触发器指令均可实现对指定位地址的置位或复位。触发器可以用在逻辑串最右端,结束一个逻辑串;也可用在逻辑串中,当作一个特殊触点,影响右边的逻辑操作结果。置位优先型RS触发器如下图所示。

7 边沿检测指令 当信号状态变化时就产生跳变沿:从0变到1时,产生一个上升沿(也称正跳沿);从1变到0时,产生一个下降沿(也称负跳变)。跳变沿检测的方法是:在每个扫描周期(OB1循环扫描一周),把当前信号状态和它在前一个扫描周期的状态相比较,若不同,则表明有一个跳变沿。因此,前一个周期里的信号状态必须被存储,以便能和新的信号状态相比较。 S7-300/400PLC有两种边沿检测指令:一种是对逻辑串操作结果RLO的跳变沿检测的指令;另一种是对单个触点跳变沿检测的指令。 (1) RLO跳变沿检测指令 RLO跳变沿检测可分别检测正跳沿和负跳沿。

① 当RLO从0到1时,正跳沿检测指令在当前扫描周期以RLO=0表示其变化,而在其他扫描周期均为0。在执行RLO正跳沿检测指令前,RLO的状态存储在位地址中。

RLO跳变沿检测指令和操作数

触点跳变沿检测可分别检测正跳沿和负跳沿。 (2) 触点跳变沿检测指令 触点跳变沿检测可分别检测正跳沿和负跳沿。 ① 触点正跳沿检测指令FP:在LAD中以功能框表示,它有两个输入端,一个直接连接要检测的触点,另一个输入端M_BIT所接的位存储器上存储上一个扫描周期触点的状态。有一个输出端Q,当触点状态从0到1时,输出端Q接通一个扫描周期。 ② 触点负跳沿检测指令FN:在LAD中以功能框表示,它有两个输入端,一个直接连接要检测的触点,另一个输入端M_BIT所接的位存储器上存储上一个扫描周期触点的状态。有一个输出端Q,当触点状态从1到0时,输出端Q接通一个扫描周期。

触点跳变沿检测指令和操作数

对RLO下降沿的检测,读者可自行分析c点、d点时的情况,FN指令检测到一个RLO①的负跳沿时将M8.1置1,M8.1为1的时间也是一个周期。 LAD(a)程序行要检测的是逻辑串I1.0、I1.1的运算结果的跳变边沿,即图中①点处的RLO的边沿变化情况,同时用M1.0来存储RLO①的状态。程序的工作过程如时序图:当程序运行到图中a点时,当前RLO值是1,而上次RLO值(存放在M1.0中)是0,于是FP指令判断到一个RLO的正跳沿,就将②点处的M1.0置1,并且输出给M8.0;当程序经过1个扫描周期,运行到波形图中b点时,当前RLO值和前一个RLO值均为1,相同(RLO在相邻两个扫描周期中相同,可全为1或0),那么FP指令将②点处M1.0置0,并输出给M8.0。这样M8.0为1的时间仅一个周期。图中虚线箭头指的是两个相邻扫描周期RLO的比较。 对RLO下降沿的检测,读者可自行分析c点、d点时的情况,FN指令检测到一个RLO①的负跳沿时将M8.1置1,M8.1为1的时间也是一个周期。

位逻辑指令的应用举例 机床的工作台运动示意图 工作台由交流电动机驱动,改变电动机的旋转方向就可以改变工作台的运动方向。按下启动按钮SBl后,电动机驱动工作台运动,如果工作台运动到极限位置时,由行程开关SQl或SQ2检测并发出停止前进指令,同时自动发出返回指令。只要不按停止按钮SB2,工作台将继续这种自动往复运动。工作台驱动电动机通过热继电器做过载保护。

I/O地址分配表

系统梯形图程序

二、定时器指令 S7-300/400PLC提供了多种型式的定时器,定时器的语句表指令如表1所示,梯形图指令与操作数如表2所示。不同类型定时器的编号是统一的,如CPU314为T0~T127(共128个),究竟它属于哪种定时器类型由对它所用的指令决定。 定时器的语句表指令

定时器的梯形图指令与操作数

这是一种产生一个“长度脉冲”,即接通一定时间的定时器, 1、脉冲定时器(SP) 这是一种产生一个“长度脉冲”,即接通一定时间的定时器,

图中当I0. 0闭合(RLO有正跳沿),SP定时器T4启动并运行,T4触点立即动作,T4常开触点闭合,只要I0 图中当I0.0闭合(RLO有正跳沿),SP定时器T4启动并运行,T4触点立即动作,T4常开触点闭合,只要I0.0保持闭合,T4继续运行,T4常开触点保持闭合。当定时时间到(图中为3s),T4常开触点断开。所以只要I0.0维持足够长的时间(超过设定时间)及无复位信号(I0.1未接通)两个条件成立,定时器就能接通一固定时间(所设定时间)。

2、延时脉冲定时器(SE)

图中当I0. 0闭合(RLO有正跳沿),SE定时器T4启动运行,T4触点立即动作,其常开触点闭合,此时即使I0 图中当I0.0闭合(RLO有正跳沿),SE定时器T4启动运行,T4触点立即动作,其常开触点闭合,此时即使I0.0断开,T4仍将继续运行,T4常开触点也一直保持闭合直至所设定的时间。只要I0.0不在设定时间内反复短时通断,T4均可设定长时间的接通。如果出现I0.0短时反复通断,导致T4的反复响应,会使总接通时间大于设定时间(图中t>3s处)。I0.1闭合,启动复位信号,定时器T4立即复位(停止运行)。

启动延时接通定时器(SD) 控制中,有些控制动作要比输入信号滞后一段时间开始,但和输入信号一起停止,为了满足这样的要求,可采用启动延时接通定时器,其工作过程如下图所示。 图中,当I0.0闭合(RLO有正跳沿),SD定时器T4启动运行,当设定的延时时间3s到后,T4触点动作,T4的常开触点闭合,直至I0.0断开,T4运行随之停止,T4常开触点断开。I0.0闭合时间小于定时器T4设定延时时间,T4触点不会动作。I0.1闭合,启动复位信号,定时器T4立即复位(停止运行)。

4 启动保持型延时接通定时器(SS) 如果希望输入信号接通后(接通短时即断开,或持续接通),在设定延迟时间后才有输出,就需要用启动保持型延时接通定时器。其工作过程如下图。 图中当I0.0闭合一下或闭合较长时间(RLO有正跳沿),SS定时器T4启动运行,当设定的延时时间3s到后,T4线圈得电,T4常开触点就闭合,此后一直闭合,直至I0.1闭合,复位指令使T4复位。只有复位指令才能令动作了的SS定时器复位,因此使用SS定时器必须编写复位指令(R),其他定时方式可根据需要而定。 在设定延时时间内,如果I0.0反复通断,会影响定时器触点延迟接通时间。

5、 启动延时断开定时器(SF)

在I0.0断开的时刻,如果存在复位信号,则SF定时器立即复位。 图中I0.0闭合,SF定时器T4启动,其触点立即动作,常开触点T4立即闭合。当I0.0断开(RLO有负跳沿)时开始计时,在定时的延时时间未到之前,其触点不会动作,常开触点T4不会断开。当延时时间到,常开触点T4才会断开。在延时时间内I0.1闭合,复位信号可令T4立即复位,常开触点立即断开。不在定时延时时间内,复位(R)信号对SF定时器不起作用。 在I0.0断开的时刻,如果存在复位信号,则SF定时器立即复位。

计数器指令 在生产过程中常常要对现场事物发生的次数进行记录并据此发出控制命令,计数器就是为了完成这一功能而开发的 用线圈表示的计数器指令

用功能块表示的计数器指令及操作数

减计数器的使用

当输入I0.1从0跳变为1时,CPU将装入累加器1中的计数初值(此处为BCD数值127)置入指定的计数器C20中。计数器一般是正跳沿计数。当输入I0.3由0跳变到1,每一个正跳沿使计数器C20的计数值减1(减计数),若I0.3没有正跳沿,计数器C20的计数值保持不变。当I0.3正跳变127次,计数器C20中的计数值减为0。计数值为0后,I0.3再有正跳沿,计数值0也不会再变。计数器C20的计数值若不等于0,则C20输出状态为1,Q4.0也为1;当计数值等于0时,C20输出状态亦为0,Q4.0为0。输入I0.4若为1,计数器立即被复位,计数值复位为0,C20输出状态为0。

可逆计数器的使用

图中当S(置位)输入端的I0.1从0跳变到1时,计数器就设定为PV端输入的值,PV输入端可用BCD码指定设定值,也可用存储BCD数的单元指定设定值,本图中指定BCD数为5。当CU(加计数)输入端I0.2从0变到1时,计数器的当前值加1(最大999)。当CD(减计数)输入端I0.3从0变到1时,计数器的当前值减1(最小为0)。如果两个计数输入端都有正跳沿,则加、减操作都执行,计数保持不变。当计数值大于0时输出Q上的信号状态为1;当计数值等于0时,Q上的信号为0,图中Q4.0也相应为1或0。输出端CV和CV_BCD分别输出计数器当前的二进制计数值和BCD计数值,图中MW10存当前二进制计数值,MW12存当前BCD计数值。当R(复位)输入端的I0.4为1,计数器的值置为0,计数器不能计数,也不能置位。

下面介绍常用的功能指令的使用方法 .1 装载与传送指令 数据装载与传送指令用于在各个存储区之间交换数据及存储区与过程输入/输出模板之间交换数据。CPU在每次扫描中无条件执行数据装载与传送指令,而不受RLO的影响。 (1)对累加器1的装载和传输指令 L +8 //将立即数装载人累加器1中 L IB[DID8] //将数据双字DID8所指的输入字节装载入累加器1中 T QBl0 //将累加器1的内容传输给输出QBl0 T MWl4 //将累加器1的内容传输给存储字MWl4 T DBD2 //将累加器1的内容传输给数据双字DBD2

L STW //将状态字中的内容装入累加器1中 (2)读取或传输状态宇 L STW //将状态字中的内容装入累加器1中 T STW //将累加器1中的内容传输到状态字中 (3)装载时间值或计数值 LC Tl //将定时器Tl中的时间值以BCD码格式装入累加器1中 L Cl //将计数器Cl中的二进制格式的计数值装入累加器的低字中

传输指令的应用 传输指令EN端为允许输入端;ENO端为允许输出端。当输入I0.0为“1”时,传输指令将MWl0中的字传输给MW20。如果指令正确执行,则输出Q4.0为“1”。否则,如果输入I0.0为“0”,则数据不传输。如果希望MWl0无条件传输给MW20,则EN端直接连接至母线即可。

整数比较指令的使用 输入信号I0.0的RLO为“1”时,比较整数MW0的值是否大于等于MW2的值,如果是,则输出Q4.0为“1”。