S7300教程专业知识讲座_第1页
S7300教程专业知识讲座_第2页
S7300教程专业知识讲座_第3页
S7300教程专业知识讲座_第4页
S7300教程专业知识讲座_第5页
已阅读5页,还剩177页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1页第4章S7-300编程语言与指令系统§4.1STEP7编程语言§4.2数据类型§4.3S7-300指令基础§4.4位逻辑指令§4.5定期器与计数器指令§4.6数字指令§4.7控制指令§4.8思考与练习返回首页第2页§4.1STEP7编程语言STEP7是S7-300/400系列PLC应用设计软件包,所支持PLC编程语言非常丰富。该软件标准版支持STL(语句表)、LAD(梯形图)及FBD(功能块图)3种基本编程语言,并且在STEP7中能够互相转换。专业版附加对GRAPH(次序功能图)、SCL(构造化控制语言)、HiGraph(图形编程语言)、CFC(连续功能图)等编程语言支持。不一样编程语言可供不一样知识背景人员采取。返回本章第3页STL(语句表)STL(语句表)是一种类似于计算机汇编语言一种文本编程语言,由多条语句组成一种程序段。语句表可供习惯汇编语言顾客使用,在运行时间和要求存放空间方面最优。在设计通信、数学运算等高级应用程序时提议使用语句表。返回本节第4页LAD(梯形图)LAD(梯形图)是一种图形语言,比较形象直观,容易掌握,用得最多,堪称顾客第一编程语言。梯形图与继电器控制电路图体现方式极为相同,适合于熟悉继电器控制电路顾客使用,尤其适用于数字量逻辑控制。返回本节第5页FBD(功能块图)FBD(功能块图)使用类似于布尔代数图形逻辑符号来表达控制逻辑,某些复杂功能用指令框表达。FBD比较适合于有数字电路基础编程人员使用。返回本节第6页GRAPH(次序控制)GRAPH类似于处理问题流程图,适用于次序控制编程。利用S7-GRAPH编程语言,能够清楚迅速地组织和编写S7PLC系统次序控制程序。它根据功能将控制任务分解为若干步,其次序用图形方式显示出来并且可形成图形和文本方式文献。返回本节第7页HiGraph(图形编程语言)S7-Higraph允许用状态图描述生产过程,将自动控制下机器或系统提成若干个功能单元,并为每个单元生成状态图,然后利用信息通讯将功能单元组合在一起形成完整系统。返回本节第8页SCL(构造化控制语言)S7-SCL(StructuredControlLanguage:构造控制语言)是一种类似于PASCAL高级文本编辑语言,用于S7-300/400和C7编程,能够简化数学计算、数据管理和组织工作。S7-SCL具有PLC公开基本标准认证,符合IEC1131-3(构造化文本)标准。返回本节第9页CFC(连续功能图)利用工程工具CFC(ContinuousFunctionChart:连续功能图),能够通过绘制工艺设计图来生成SIMATICS7和SIMATICM7控制程序,该办法类似于PLCFBD编程语言。在这种图形编程办法中,块被安放在一种绘图板上并且互相连接。利用CFC顾客能够迅速、容易地将工艺设计图转化为完整可执行程序。返回本节第10页§4.2数据类型数据类型决定数据属性,在STEP7中,数据类型分为三大类:§4.2.1基本数据类型§4.2.2复杂数据类型§4.2.3参数类型返回本章第11页§4.2.1基本数据类型返回本节第12页§4.2.2复杂数据类型数组(ARRAY)构造(STRUCT)字符串(STRING)日期和时间(DATE_AND_TIME)顾客定义数据类型(UDT)功能块类型(FB、SFB)返回本节第13页1.数组(ARRAY)数组是由一组同一类型数据组合在一起而形成复杂数据类型。数组维数最大能够到6维;数组中元素能够是基本数据类型或者复杂数据类型中任一数据类型(Array类型除外,即数组类型不能够嵌套);数组中每一维下标取值范围是-32768~32767,要求下标下限必须不大于下标上限。返回上级第14页2.构造(STRUCT)

构造是由一组不一样类型(构造元素能够是基本或复杂数据类型)数据组合在一起而形成复杂数据类型。构造一般用来定义一组有关数据,例如电机一组数据能够按如下方式定义:返回上级第15页3.字符串(STRING)字符串是最多有254个字符(CHAR)一维数组,最大长度为256个字节(其中前两个字节用来存放字符串长度信息)。字符串常量用单引号括起来,例如:返回上级第16页4.日期和时间(DATE_AND_TIME)用于存放年、月、日、时、分、秒、毫秒和星期,占用8个字节,用BCD格式保存。星期天代码为1,1~6代码为2~7。例如:返回上级第17页5.顾客定义数据类型(UDT)顾客定义数据类型表达自定义构造,寄存在UDT块中(UDT1~UDT65535),在另一种数据类型中作为一种数据类型“模板”。当输入数据块时,假如需要输入几个相同构造,利用UDT能够节省输入时间。6.功能块类型(FB、SFB)这种数据类型仅能够在FB静态变量区定义,用于实现多背景DB。返回上级第18页§4.2.3参数数据类型参数类型是一种用于逻辑块(FB、FC)之间传递参数数据类型,主要有下列几个:(1)TIMER(定期器)和COUNTER(计数器)。(2)BLOCK(块):指定一种块用作输入和输出,实参应为同类型块。(3)POINTER(指针):6字节指针类型,用来传递DB块号和数据地址。(3)ANY:10字节指针类型,用来传递DB块号、数据地址、数据数量以及数据类型。返回本节第19页§4.3S7-300指令基础指令是程序最小独立单位,顾客程序是由若干条次序排列指令组成。指令一般由操作码和操作数组成,其中操作码代表指令所要完成详细操作(功能),操作数则是该指令操作或运算对象。§4.3.1PLC顾客存放区分类及功能§4.3.2指令操作数§4.3.3寻址方式

§4.3.4状态字返回本章第20页§4.3.1PLC顾客存放区分类及功能(1/2)

返回本节第21页§4.3.1PLC顾客存放区分类及功能(2/2)

返回上级第22页§4.3.2指令操作数

指令操作数(又称编程元件)一般在顾客存放区中,操作数由操作标识符和参数组成。操作标识符由主标识符和辅助标识符组成,主标识符用来指定操作数所使用存放区类型,辅助标识符则用来指定操作数单位(如:位、字节、字、双字等)。

主标识符有:I(输入过程映像寄存器、Q(输出过程映像寄存器)、M(位存放器)、PI(外部输入寄存器)、PQ(外部输出寄存器)、T(定期器)、C(计数器)、DB(数据块寄存器)和L(本地数据寄存器);

辅助标识符有:X(位)、B(字节)、W(字或2B)、D(2DW或4B)。返回本节第23页§4.3.3寻址方式所谓寻址方式就是指令执行时获取操作数方式,能够直接或间接方式给出操作数。S7-300有4种寻址方式:立即寻址存放器直接寻址存放器间接寻址寄存器间接寻址返回本节第24页1.立即寻址立即寻址是对常数或常量寻址方式,其特点是操作数直接表达在指令中,或以惟一形式隐含在指令中。下面各条指令操作数均采取了立即寻址方式,其中“//”背面内容为指令注释部分,对指令没有任何影响。返回上级第25页2.存放器直接寻址存放器直接寻址,简称直接寻址。该寻址方式在指令中直接给出操作数存放单元地址。存放单元地址可用符号地址(如SB1、KM等)或绝对地址(如I0.0、Q4.1等)。下面各条指令操作数均采取了直接寻址方式。返回上级第26页3.存放器间接寻址(1/3)存放器间接寻址,简称间接寻址。该寻址方式在指令中以存放器形式给出操作数所在存放器单元地址,也就是说该存放器内容是操作数所在存放器单元地址。该存放器一般称为地址指针,在指令中需写在方括号“[]”内。地址指针能够是字或双字,对于地址范围不大于65535存放器能够用字指针;对于其他存放器则要使用双字指针。返回上级第27页4.存放器间接寻址(2/3)【例4-3-1】存放器间接寻址单字格式指针寻址。返回上级第28页4.存放器间接寻址(3/3)

存放器间接寻址双字指针格式如图所示。【例4-3-2】存放器间接寻址双字格式指针寻址。返回上级第29页5.寄存器间接寻址(1/4)

寄存器间接寻址,简称寄存器寻址。该寻址方式在指令中通过地址寄存器和偏移量间接获取操作数,其中地址寄存器及偏移量必须写在方括号“[]”内。在S7-300中有两个地址寄存器AR1和AR2,用地址寄存器内容加上偏移量形成地址指针,并指向操作数所在存放器单元。地址寄存器地址指针有两种格式,其长度均为双字,指针格式如图所示。返回上级第30页5.寄存器间接寻址(2/4)

第一种地址指针格式适用于在确定存放区内寻址,即区内寄存器间接寻址。【例4-3-3】区内寄存器间接寻址。返回上级第31页5.寄存器间接寻址(3/4)

第二种地址指针格式适用于区域间寄存器间接寻址。

【例4-3-4】区域间寄存器间接寻址。返回上级第32页5.寄存器间接寻址(4/4)

第一种地址指针格式包括被寻址数据所在存放单元地址字节编号和位编号,至于对哪个存放区寻址,则必须在指令中明确给出。这种格式适用于在确定存放区内寻址,即区内寄存器间接寻址。第二种地址指针格式包括了数据所在存放区说明位(存放区域标识位),可通过变化标识位实现跨区域寻址,区域标识由位26~24确定。这种指针格式适用于区域间寄存器间接寻址。返回上级第33页§4.3.4状态字状态字用于表达CPU执行指令时所具有状态信息。首位检测位(FC)逻辑操作成果(RLO)状态位(STA) 或位(OR)溢出位(OV)溢出状态保持位(OS)条件码1(CC1)和条件码0(CC0)二进制成果位(BR)返回本节第34页§4.4位逻辑指令位逻辑指令处理对象为二进制位信号。位逻辑指令扫描信号状态“1”和“0”位,并根据布尔逻辑对它们进行组合,所产生成果(“1”或“0”)称为逻辑运算成果,存放在状态字“RLO”中。§4.4.1触点与线圈§4.4.2基本逻辑指令§4.4.3置位和复位指令§4.4.4RS和SR触发器§4.4.5跳变沿检测指令返回本章第35页§4.4.1触点与线圈在LAD(梯形图)程序中,一般使用类似继电器控制电路中触点符号及线圈符号来表达PLC位元件,被扫描操作数(用绝对地址或符号地址表达)则标注在触点符号上方,如图所示。返回本节第36页1.常开触点对于常开触点(动合触点),则对“1”扫描对应操作数。在PLC中要求:若操作数是“1”则常开触点“动作”,即以为是“闭合”;若操作数是“0”,则常开触点“复位”,即触点仍处于打开状态。常开触点所使用操作数是:I、Q、M、L、D、T、C。返回上级第37页2.常闭触点常闭触点(动断触点)则对“0”扫描对应操作数。在PLC中要求:若操作数是“1”则常闭触点“动作”,即触点“断开”;若操作数是“0”,则常闭触点“复位”,即触点仍保持闭合。常闭触点所使用操作数是:I、Q、M、L、D、T、C。返回上级第38页3.输出线圈(赋值指令)

输出线圈与继电器控制电路中线圈同样,假如有电流(信号流)流过线圈(RLO=“1”),则被驱动操作数置“1”;假如没有电流流过线圈(RLO=“0”),则被驱动操作数复位(置“0”)。输出线圈只能出目前梯形图逻辑串最右边。输出线圈等同于STL程序中赋值指令(用等于号“=”表示),所使用操作数能够是:Q、M、L、D。返回上级第39页4.中间输出

在梯形图设计时,假如一种逻辑串很长不便于编辑时,能够将逻辑串提成几个段,前一段逻辑运算成果(RLO)可作为中间输出,存放在位存放器(I、Q、M、L或D)中,该存放位能够当作一种触点出目前其他逻辑串中。中间输出只能放在梯形图逻辑串中间,而不能出目前最左端或最右端。与下面程序等效返回上级第40页§4.4.2基本逻辑指令基本逻辑指令包括:“与”指令“与非”指令“或”指令“或非”指令“异或”指令“异或非”指令逻辑块操作信号流取反指令返回本节第41页1.逻辑“与”指令

逻辑“与”指令使用操作数能够是:I、Q、M、L、D、T、C。有2种指令形式(STL和FBD),用LAD也能够实现逻辑“与”运算。返回上级第42页2.逻辑“与非”指令

逻辑“与非”指令使用操作数能够是:I、Q、M、L、D、T、C。有2种指令形式(STL和FBD),用LAD也能够实现逻辑“与非”运算。返回上级第43页3.逻辑“或”指令

逻辑“或”指令使用操作数能够是:I、Q、M、L、D、T、C。有2种指令形式(STL和FBD),用LAD也能够实现逻辑“或”运算。返回上级第44页4.逻辑“或非”指令

逻辑“或非”指令使用操作数能够是:I、Q、M、L、D、T、C。有2种指令形式(STL和FBD),用LAD也能够实现逻辑“或非”运算。返回上级第45页5.逻辑“异或”指令

返回上级第46页6.逻辑“异或非”指令

返回上级第47页7.逻辑块操作

返回上级第48页8.信号流取反指令

信号流取反指令作用就是对逻辑串RLO值进行取反。指令格式及示例见表4-13。当输入位I0.0和I0.1同步动作时,Q4.0信号状态为“0”;不然,Q4.0信号状态为“1”。返回上级第49页§4.4.3置位和复位指令置位(S)和复位(R)指令根据RLO值来决定操作数信号状态是否变化,对于置位指令,一旦RLO为“1”,则操作数状态置“1”,虽然RLO又变为“0”,输出仍保持为“1”;若RLO为“0”,则操作数信号状态保持不变。对于复位操作,一旦RLO为“1”,则操作数状态置“0”,虽然RLO又变为“0”,输出仍保持为“0”;若RLO为“0”,则操作数信号状态保持不变。这一特性又被称为静态置位和复位,对应地,赋值指令被称为动态赋值。返回本节第50页返回上级第51页【例4-4-1】置位与复位指令应用——传送带运动控制。如图所示为一种传送带,在传送带起点有两个按钮:用于起动S1和用于停顿S2。在传送带尾端也有两个按钮:用于启动S3和用于停顿S4。要求能从任一端起动或停顿传送带。另外,当传送带上物件达到末端时,传感器S5使传送带停顿。返回上级第52页地址分派

端子连接图

返回上级第53页功能块图程序

梯形图程序

返回上级第54页§4.4.4RS和SR触发器RS触发器为“置位优先”型触发器(当R和S驱动信号同时为“1”时,触发器最后为置位状态);SR触发器为“复位优先”型触发器(当R和S驱动信号同步为“1”时,触发器最后为复位状态)。RS触发器和SR触发器“位地址”、置位(S)、复(S)及输出(Q)所使用操作数能够是:I、Q、M、L、D。返回本节第55页1.RS触发器返回上级第56页2.SR触发器返回上级第57页3.RS触发器和SR触发器工作时序示例梯形图程序工作时序

返回上级第58页§4.4.5跳变沿检测指令STEP7中有2类跳变沿检测指令,一种是对RLO跳变沿检测指令,另一种是对触点跳变沿直接检测梯形图方块指令。RLO上升沿检测指令RLO下降沿检测指令触点信号上升沿检测指令触点信号下降沿检测指令【例4-4-2】边缘检测指令应用返回本节第59页1.RLO上升沿检测指令返回上级第60页2.RLO下降沿检测指令返回上级第61页3.RLO边缘检测指令工作时序工作时序

示例程序

返回上级第62页4.触点信号上升沿检测指令返回上级第63页5.触点信号下降沿检测指令返回上级第64页6.触点信号边缘检测指令工作时序工作时序

示例程序

返回上级第65页

【例4-4-2】边缘检测指令应用——传送带运动方向检测。在如图所示传送带一侧装配有两个反射式光电传感器(PEB1和PEB2)(安装距离不大于包裹长度),设计用于检测包裹在传送带上移动方向,并用方向批示灯L1和L2批示。其中光电传感器触点为常开触点,当检测到物体时动作(闭合)。返回上级第66页端子连接图【例4-4-2】返回上级第67页I/O地址分派表

【例4-4-2】返回上级第68页控制程序(LAD)

【例4-4-2】控制程序(FBD)

返回上级第69页§4.5定期器与计数器指令§4.5.1定期器指令§4.5.2计数器指令§4.5.3CPU时钟存放器

返回本章第70页§4.5.1定期器指令S_PULSE(脉冲S5定期器)S_PEXT(扩展脉冲S5定期器)S_ODT(接通延时S5定期器)S_ODTS(保持型接通延时S5定期器)S_OFFDT(断电延时S5定期器)返回本节第71页1.S_PULSE(脉冲S5定期器)(1/3)

脉冲定期器梯形图及功能块图指令返回上级第72页1.S_PULSE(脉冲S5定期器)(2/3)

脉冲定期器线圈指令返回上级第73页1.S_PULSE(脉冲S5定期器)(3/3)

工作时序示例程序返回上级第74页

【例4-5-1】脉冲定期器应用:优先抢答器设计。返回上级第75页

【例4-5-1】设计说明:参赛者要抢答主持人所提问题时,需抢先按下桌上按钮;批示灯亮后需待主持人按下“复位”键R后才熄灯;对初中班学生照顾,只要按下SB11和SB12中任一种按钮灯HL1都亮;对高三班学生限制,只有SB31和SB32都按下时灯HL3才亮;若在主持人按下“开始”按钮S后10s内有抢答按钮压下,则电磁铁YC得电,使彩球摇动,以示竞赛者得到一次幸运机会;假如定期到仍未有抢答,则严禁继续抢答。返回上级第76页端子接线图

【例4-5-1】返回上级第77页I/O地址分派表【例4-5-1】返回上级第78页控制程序:建立允许抢答和严禁抢答标志【例4-5-1】返回上级第79页设置抢答定期器

【例4-5-1】初中组抢答控制

返回上级第80页【例4-5-1】高一组抢答控制

高三组抢答控制

返回上级第81页2.S_PEXT(扩展脉冲S5定期器)(1/3)

扩据脉冲S5定期器LAD及FBD指令返回上级第82页2.S_PEXT(扩展脉冲S5定期器)(2/3)

扩据脉冲S5定期器线圈指令返回上级第83页2.S_PEXT(扩展脉冲S5定期器)(3/3)

示例程序工作波形返回上级第84页

【例4-5-2】扩展脉冲定期器应用——电动机延时自动关闭控制。控制要求:按动起动按钮S1(I0.0),电动机M(Q4.0)立即起动,延时5分钟后来自动关闭。起动后按动停顿按钮S2(I0.1),电动机立即停机。返回上级第85页【例4-5-2】控制程序(LAD)

控制程序(STL)

返回上级第86页3.S_ODT(接通延时S5定期器)(1/3)

接通延时S5定期器LAD及FBD指令返回上级第87页3.S_ODT(接通延时S5定期器)(2/3)

接通延时S5定期器线圈指令返回上级第88页3.S_ODT(接通延时S5定期器)(3/3)

示例程序工作波形返回上级第89页

【例4-5-3】接通延时定期器和脉冲定期器应用——用定期器组成一脉冲发生器,当满足一定条件时,能够输出一定频率和一定占空比脉冲信号。

工艺要求:当按钮S1(I0.0)按下时,输出批示灯H1(Q4.0)以灭2s,亮1s规律交替进行。返回上级第90页【例4-5-3】控制程序(使用接通延时定期器)

控制程序(使用脉冲定期器)

返回上级第91页4.S_ODTS(保持型接通延时S5定期器)(1/3)

保持型接通延时S5定期器LAD及FBD指令返回上级第92页4.S_ODTS(保持型接通延时S5定期器)(2/3)

保持型接通延时S5定期器线圈指令返回上级第93页4.S_ODTS(保持型接通延时S5定期器)(3/3)

示例程序工作波形返回上级第94页

【例4-5-4】接通延时定期器应用——电动机次序起停控制。

控制要求:如图4-32a所示,某传输线由两个传送带组成,按物流要求,当按动起动按钮S1时,皮带电机Motor_2首先起动,延时5s后,皮带电机Motor_1自动起动;假如按动停顿按钮S2,则Motor_1立即停机,延时10s后,Motor_2自动停机。返回上级第95页

【例4-5-4】端子接线图返回上级第96页

【例4-5-4】I/O分派表返回上级第97页

【例4-5-4】控制程序(LAD)控制程序(FBD)返回上级第98页5.S_OFFDT(断电延时S5定期器)(1/3)

断电延时S5定期器LAD及FBD指令返回上级第99页5.S_OFFDT(断电延时S5定期器)(2/3)

断电延时S5定期器线圈指令返回上级第100页5.S_OFFDT(断电延时S5定期器)(3/3)

示例程序工作波形返回上级第101页§4.5.2计数器指令S7-300计数器都是16位,因此每个计数器占用该区域2个字节空间,用来存放计数值。不一样CPU模板,用于计数器存放区域也不一样,最多允许使用64~512个计数器。计数器地址编号:C0~C511。S_CUD(加/减计数器)S_CU(加计数器)S_CD(减计数器)计数器线圈指令返回本节第102页1.S_CUD(加/减计数器)块图指令返回上级第103页2.S_CU(加计数器)块图指令返回上级第104页3.S_CD(减计数器)块图指令返回上级第105页4.计数器线圈指令除了前面介绍块图形式计数器指令以外,S7-300系统还为顾客准备了LAD环境下线圈形式计数器。这些指令有计数器初值预置指令SC、加计数器指令CU和减计数器指令CD。返回上级第106页加计数器线圈指令应用示例初值预置SC指令若与CU指令配合可实现S_CU指令功能。返回上级第107页减计数器线圈指令应用示例SC指令若与CD指令配合可实现S_CD指令功能。返回上级第108页加/减计数器线圈指令应用示例SC指令若与CU和CD配合可实现S_CUD功能。返回上级第109页§4.5.3访问CPU时钟存放器要使用该功能,在硬件配备时需要设置CPU属性,其中有一种选项为ClockMemory,选中选择框就可激活该功能。返回本节第110页设置CPU时钟存放器在MemoryByte区域输入想为该项功能设置MB地址,如需要使用MB10,则直接输入10。ClockMemory功能是对所定义MB各个位周期性地变化其二进制值(占空比为1:1)。ClockMemory各位周期及频率见表。返回上级第111页

【例4-5-5】时钟存放器与计数器应用。当定期器不够用时,能够将计数器扩展为定期器。图中分别给出了用减计数器扩展定期器控制程序,程序中使用了CPU时钟存放器,设置MB10为时钟存放器,由表4-39可知M10.0变化周期为0.1s。返回上级第112页§4.6数字指令§4.6.1装入与传送指令§4.6.2转换指令§4.6.3比较指令§4.6.4算数运算指令§4.6.5字逻辑运算指令§4.6.6移位指令§4.6.7数字指令综合应用

返回本章第113页§4.6.1装入和传送指令装入指令(L)和传送指令(T),能够对输入或输出模块与存放区之间信息交换进行编程。对累加器1装入指令对累加器1传送指令状态字与累加器1之间装入和传送指令与地址寄存器有关装入和传送指令LC(定期器/计数器装载指令)MOVE指令返回本节第114页1.对累加器1装入指令返回上级第115页2.对累加器1传送指令T指令能够将累加器1内容复制到被寻址操作数,所复制字节数取决于目标地址类型(字节、字或双字),指令格式如下:T 操作数其中操作数能够为直接I/O区(存放类型为PQ)、数据存放区或过程映像输出表对应地址(存放类型为Q)。返回上级第116页3.状态字与累加器1之间装入和传送指令LSTW(将状态字装入累加器1)将状态字装入累加器1中,指令执行与状态位无关,并且对状态字没有任何影响。指令格式如下:L STWTSTW(将累加器1内容传送到状态字)使用TSTW指令能够将累加器1位0~8传送到状态字对应位,指令执行与状态位无关,指令格式如下:T STW返回上级第117页4.与地址寄存器有关装入和传送指令(1/4)

LAR1(将操作数内容装入地址寄存器AR1)返回上级第118页4.与地址寄存器有关装入和传送指令(2/4)

LAR2(将操作数内容装入地址寄存器2)使用LAR2指令能够将操作数内容(32位指针)装入地址寄存器AR2,指令格式同LAR1,其中操作数能够是累加器1、指针型常数(P#)、存放双字(MD)、本地数据双字(LD)、数据双字(DBD)或背景数据双字(DID),但不能用AR1。返回上级第119页4.与地址寄存器有关装入和传送指令(3/4)

TAR1(将地址寄存器1内容传送到操作数)返回上级第120页4.与地址寄存器有关装入和传送指令(4/4)

TAR2(将地址寄存器2内容传送到操作数)使用TAR2指令能够将地址寄存器AR1内容(32位指针)传送给被寻址操作数,指令格式同TAR1。其中操作数能够是累加器1、存放双字(MD)、本地数据双字(LD)、数据双字(DBD)、背景数据双字(DID),但不能用AR1。CAR(交换地址寄存器1和地址寄存器2内容)使用CAR指令能够交换地址寄存器AR1和地址寄存器AR2内容,指令不需要指定操作数。指令执行与状态位无关,并且对状态字没有任何影响。返回上级第121页5.LC(定期器/计数器装载指令使用LC指令能够在累加器1内容保存到累加器2中之后,将指定定期器字中目前时间值和时基以BCD码(0~999)格式装入到累加器1中,或将指定计数器目前计数值以BCD码(0~999)格式装入到累加器1中。指令格式如下:LC <定期器/计数器>返回上级第122页6.MOVE指令MOVE指令为功能框形式传送指令,能够复制字节、字或双字数据对象。应用中IN和OUT端操作数能够是常数、I、Q、M、D、L等类型,但必须在宽度上匹配。返回上级第123页§4.6.2转换指令转换指令是将累加器1中数据进行数据类型转换,转换成果仍放在累加器1中。在STEP7中,能够实现BCD码与整数、整数与长整数、长整数与实数、整数反码、整数补码、实数求反等数据转换操作。BCD码和整数到其他类型转换指令整数和实数码型变换指令实数取整指令累加器1调整指令返回本节第124页1.BCD码和整数到其他类型转换指令(1/3)

STL形式指令(1)返回上级第125页1.BCD码和整数到其他类型转换指令(2/3)STL形式指令(2)返回上级第126页1.BCD码和整数到其他类型转换指令(3/3)LAD和FBD形式指令返回上级第127页2.整数和实数码型变换指令(1/2)

STL形式指令返回上级第128页2.整数和实数码型变换指令(2/2)

LAD和FBD形式指令返回上级第129页3.实数取整指令(1/2)

STL形式指令返回上级第130页3.实数取整指令(2/2)

LAD和FBD形式指令返回上级第131页4.累加器1调整指令返回上级第132页§4.6.3比较指令比较指令可完成整数、长整数或32位浮点数(实数)相等、不等、大于、不大于、大于或等于、不大于或等于等比较。整数比较指令长整数比较指令实数比较指令返回本节第133页1.整数比较指令返回上级第134页1.整数比较指令(示例)返回上级第135页2.长整数比较指令返回上级第136页2.长整数比较指令(示例)返回上级第137页3.实数比较指令返回上级第138页3.实数比较指令(示例)

返回上级第139页§4.6.4算数运算指令算术运算指令可完成整数、长整数及实数加、减、乘、除、求余、求绝对值等基本算数运算;以及32位浮点数平方、平方根、自然对数、基于e指数运算及三角函数等扩展算数运算。基本算术运算指令扩展算术运算指令返回本节第140页1.基本算数运算指令(整数运算)

返回上级第141页1.基本算数运算指令(长整数运算)

返回上级第142页1.基本算数运算指令(实数运算)

返回上级第143页【例4-6-1】16位整数算术运算指令应用。返回上级第144页【例4-6-1】16位整数算术运算指令应用。【例4-6-2】求输入双字ID10内容与常数32相除余数,成果保存到MD20中。返回上级第145页2.扩展算数运算指令返回上级第146页§4.6.5字逻辑运算指令字逻辑运算指令可对两个16位(WORD)或32位(DWORD)二进制数据,逐位进行逻辑与、逻辑或、逻辑异或运算。对于STL形式字逻辑运算指令,可对累加器1和累加器2中字或双字数据进行逻辑运算,成果保存在累加器1中,若成果不为0,则对状态标志位CC1置“1”,不然对CC1置“0”。对于LAD和FBD形式字逻辑运算指令,由参数IN1和IN2提供参与运算两个数据,运算成果保存在由OUT指定存放区中。返回本节第147页字逻辑运算指令格式返回上级第148页§4.6.6移位指令移位指令有2种类型:基本移位指令可对无符号整数、有符号长整数、字或双字数据进行移位操作;循环移位指令可对双字数据进行循环移位和累加器1带CC1循环移位操作。有符号右移指令字移位指令双字移位指令双字循环移位指令带累加器循环移位指令返回本节第149页1.有符号右移指令格式返回上级第150页2.字移位指令格式返回上级第151页3.双字移位指令格式返回上级第152页4.双字循环移位指令格式返回上级第153页5.带累加器循环移位指令格式返回上级第154页§4.6.7数字指令综合应用【例4-6-3】物品分选系统设计。返回本节第155页【例4-6-3】

原理与控制说明:传送带积极轮由一台交流电动机M拖动,该电动机通断由接触器KM控制,从动轮上装有脉冲发生器LS,每传送一种物品,LS发出一种脉冲,作为物品发送检测信号,次品检测在传送带0号位进行,由光电检测装置PH1检测,当次品在传送带上继续往前走,到4号位置时应使电磁铁YV通电,电磁铁向前推,次品落下,当光电开关PH2检测到次品落下时,给出信号,让电磁铁YV断电,电磁铁缩回,正品则到第9号位置时装入箱中,光电开关PH3为正品装箱计数检测用。返回上级第156页【例4-6-3】端子接线图返回上级第157页【例4-6-3】I/O分派表返回上级第158页【例4-6-3】控制程序返回上级第159页§4.7控制指令控制指令可控制程序执行次序,使得CPU能根据不一样情况执行不一样程序。控制指令有3类:§4.7.1逻辑控制指令§4.7.2程序控制指令§4.7.3主控继电器指令返回本章第160页§4.7.1逻辑控制指令逻辑控制指令是指逻辑块内跳转和循环指令,这些指令能够中断原有线性程序扫描,并跳转到目标地址处重新执行线性程序扫描。目标地址由跳转指令背面标号指定,该地址标号指出程序要跳往何处,可向前跳转,也能够向后跳转,最大跳转距离为-32768或32767字。无条件跳转指令多分支跳转指令条件跳转指令循环指令返回本节第161页1.无条件跳转指令无条件跳转指令JU执行时,将直接中断目前线性程序扫描,并跳转到由指令背面标号所指定目标地址处重新执行线性程序扫描。返回上级第162页【例4-7-1】无条件跳转指令使用。当程序执行到无条件跳转指令时,将直接跳转到L1处执行。返回上级第163页2.多分支跳转指令多分支跳转指令JL指令格式如下:JL<标号>假如累加器1低字中低字节内容不大于JL指令和由JL指令所指定标号之间JU指令数量,JL指令就会跳转到其中一条JU处执行,并由JU指令深入跳转到目标地址;假如累加器1低字中低字节内容为0,则直接执行JL指令下面第一条JU指令;假如累加器1低字中低字节内容为1,则直接执行JL指令下面第二条JU指令;假如跳转目标地数量太大,则JL指令跳转到目标地列表中最后一种JU指令之后第一种指令。返回上级第164页【例4-7-2】多分支跳转指令使用。返回上级第165页3.条件跳转指令返回上级第166页【例4-7-3】条件跳转指令使用。

程序示例如图4-44所示。当I0.0与I0.1同步为“1”时,则跳转到L2处执行;不然,到L1处执行(次序执行)。返回上级第167页4.循环指令循环指令格式如下:LOOP<标号>使用循环指令(LOOP)能够数次反复执行特定程序段,由累加器1确定反复执行次数,即以累加器1低字为循环计数器。LOOP指令执行时,将累加器1低字中值减1,假如不为0,则继续循环过程,不然执行LOOP指令背面指令。循环体是指循环标号和LOOP指令间程序段。返回上级第168页【例4-7-4】循环指令使用。利用循环指令能够完成有规律反复计算过程,下面是求阶乘“8!”示例程序:返回上级第169页§4.7.2程序控制指令程序控制指令是指功能块(FB、FC、SFB、SFC)调用指令和逻辑块(OB,FB,FC)结束指令。调用块或结束块可以是有条件或是无条件。基本控制指令子程序调用指令CALL指令可以调用用户编写功能块或操作系统提供功能块,CALL指令操作数是功能块类型及其编号,当调用功能块是FB块时还要提供对应背景数据块DB。使用CALL指令可以为被调用功能块中形参赋以实际参数,调用时应保证明参与形参数据类型一致。返回本节第170页1.基本控制指令返回上级第171页2.子程序调用指令返回上级第172页§4.7.3主控继电器指令主控继电器(MCR)是一种继电器梯形图逻辑主开关,用于控制电流(能流)通断。返回本节第173页主控指令使用返回上级第174页§4.8思考与练习一、思考题1.S7-300

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论