为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > s7-200

s7-200

2018-06-13 72页 ppt 3MB 1阅读

用户头像 个人认证

旋律

几年的财务工作经验,现认财务主管一职!精通各种财务管理软件

举报
s7-200可编程控制器原理及应用莱芜技校电工实习教研组数控机床的可编程序控制器第1章概论第2章可编程控制器构成原理第3章S7-200可编程控制器第4章SIMATICS7-200编程软件第5章S7-200PLC基本指令5.2算术、逻辑运算指令第1章概论1.1可编程控制器的产生及定义1、PLC的产生及定义1968年由美国通用汽车公司(GE)提出,1969年有美国数字设备公司(DEC)研制成功,有逻辑运算、定时、计算功能称为PLC(programmablelogiccontroller)。80年代,由于计算机技术的发展,PLC采用通用微处理器...
s7-200
可编程控制器原理及应用莱芜技校电工实习教研组数控机床的可编程序控制器第1章概论第2章可编程控制器构成原理第3章S7-200可编程控制器第4章SIMATICS7-200编程软件第5章S7-200PLC基本指令5.2算术、逻辑运算指令第1章概论1.1可编程控制器的产生及定义1、PLC的产生及定义1968年由美国通用汽车公司(GE)提出,1969年有美国数字设备公司(DEC)研制成功,有逻辑运算、定时、计算功能称为PLC(programmablelogiccontroller)。80年代,由于计算机技术的发展,PLC采用通用微处理器为核心,功能扩展到各种算术运算,PLC运算过程控制并可与上位机通讯、实现远程控制。被称为PC(programmablecontroller)即可编程控制器。2、PLC的产生及定义国际电工委员会(IEC)1987年颁布的可编程逻辑控制器的定义如下:“可编程逻辑控制器是专为在工业环境下应用而设计的一种数字运算操作的电子装置,是带有存储器、可以编制程序的控制器。它能够存储和执行命令,进行逻辑运算、顺序控制、定时、计数和算术运算等操作,并通过数字式和模拟式的输入输出,控制各种类型的机械或生产过程。可编程控制器及其有关的外围设备,都应按易于工业控制系统形成一个整体、易于扩展其功能的原则设计”。本章叙述可编程控制器产生、定义及特点,分类和发展方向1.3可编程控制器的工作特点1、使用于工业环境,抗干扰能力强。2、可靠性高。无故障工作时间(平均)数十万小时并可构成多机冗余系统。3、控制能力极强。算术、逻辑运算、定时、计数、PID运算、过程控制、通讯等。4、使用、编程方便。(LAD)梯形图、语句(STL)、功能图(FBD)、控制系统流程图等编程语言通俗易懂,使用方便。5、组成灵活。小型PLC为整体结构,并可外接I/O扩展机箱构成PLC控制系统。中大型PLC采用分体模块式结构,设有各种专用功能模块(开关量、模拟量输入输出模块,位控模块,伺服、步进驱动模块等)供选用和组合,由各种模块组成大小和要求不同的控制系统。所以可编程控制器可以称为全功能工业控制计算机。1.4可编程控制器的分类和发展1、 分类按I/O点数可分为大、中、小型三大类,通常可以定义为:小型:I/O点数在256点以下;中型:I/O点数在256~1024点之间;大型:I/O点数在1024点以上。2、应用可编程控制器在多品种、小批量、高质量的产品生产中得到广泛的应用,PLC控制已成为工业控制的重要手段之一,与CAD/CAM,机器人技术一起成为实现现代自动化生产的三大支柱。通常可以认为,只要有控制要求的地方,都可以用到可编程控制器。3、发展方向发展方向分小型化和大型化两个发展趋势。小型PLC有两个发展方向,即小(微)型化和专业化。大型化指的是大中型PLC向着大容量、智能化和网络化发展,使之能与计算机组成集成控制系统,对大规模、复杂系统进行综合性的自动控制。第2章可编程控制器构成原理可编程控制器硬件系统:可编程控制器系统由输入部分、运算控制部分和输出部分组成。输入部分:将被控对象各种开关信息和操作台上的操作命令转换成可编程控制器的输入信号,然后送到PLC的输入端点。运算控制部分(CPU):由可编程控制器内部CPU按照用户程序的设定,完成对输入信息的处理,并可以实现算术、逻辑运算等操作功能。输出部分:由PLC输出接口及外围现场设备构成。CPU的运算结果通过PLC的输出电路,提供给被控制装置。2.1可编程控制器的基本组成可编程控制器主机的硬件电路:由CPU,存储器,基本I/O接口电路,外设接口,电源等五大部分组成。2.1可编程控制器的基本组成基本I/O接口电路可编程控制器输入电路原理图PLC内部输入电路作用是将PLC外部信号送至PLC内部电路。输入接点分为干接点式,直流输入式和交流输入式三大类。2.1可编程控制器的基本组成可编程控制器输出电路原理图PLC输出电路用来驱动被控负载(电磁铁、继电、接触器线圈等)。PLC输出电路结构形式分为继电器式,双极型和晶闸管式等三种。2.2可编程控制器的工作原理可编程控制器通过循环扫描输入端口的状态,执行用户程序,实现控制任务。PLC采用循环顺序扫描方式工作,CPU在每个扫描周期的开始扫描输入模块的信号状态,并将其状态送入到输入映像寄存器区域;然后根据用户程序中的程序指令来处理传感器信号,并将处理结果送到输出映像寄存器区域,在每个扫描周期结束时,送入输出模块。第3章S7-200可编程控制器S7系列PLC分为S7-400、S7-300和S7-200等大、中、小(微)三个子系列。本章以S7-200系列PLC为例,叙述小型PLC系统的构成,编程用的元器件,寻址方式,I/O扩展,编程语言等PLC应用的基础知识。3.1S7-200系列PLC的构成S7-200小型可编程控制系统由主机(基本单元)、I/O扩展单元、功能单元(模块)和外部设备(文本/图形显示器、编程器)等组成。CPU224主机的结构外形工作方式开关,模拟电位器,I/O扩展接口,工作状态指示和用户程序存储卡,I/O接线端子排及发光指示等。主机箱体外部的RS-485通讯接口,用以连接编程器(手持式或PC机)、文本/图形显示器、PLC网络等外部设备。(2)主机I/O及扩展CPU22X系列PLC主机的I/O点数及可扩展的模块数目见表3.2。S7-200CPU存储器系统S7-200CPU存储器系统由RAM和EEPROM两种存储器构成。系统掉电时,自动将RAM中M存储器的有关内容保存到EEPROM存储器。3.1.2扫描周期及工作方式1、扫描周期S7-200CPU连续执行用户任务的循环序列称为扫描。一个机器扫描周期(用户程序运行一次),分为读输入(输入采样),执行程序,处理通讯请求,执行CPU自诊断,写输出(输出刷新)等五个阶段,CPU周而复始地循环扫描工作。也可以把扫描周期简化为读输入、执行用户程序和写输出三个阶段。3.2.1数据存储类型及寻址方式S7-200数据寻址方式有立即数寻址、直接寻址和间接寻址三大类。立即数寻址:#100直接寻址:位寻址如上图。字节、字、双字寻址(直接寻址)例:VB100、VW100、VD1003.2.2S7-200数据存储区及元件(内部资源)的功能1.输入/输出映像寄存器:S7-200PLC编址范围(I0.0~I15.7)输入映像寄存器(该区域可以按位操作又称输入继电器)输入继电器线圈由外部信号驱动,常开触点和常闭触点供用户编程使用。3.2.2数据存储区及元件功能输出映像寄存器:S7-200PLC编址范围(Q0.0~Q15.7)输出映像寄存器(又称输出继电器)是用来将PLC的输出信号传递给负载,线圈用程序指令驱动。PLC的每一个I/O点都是一个确定的物理点。CPU224主机有I0.0~I0.7,I1.0~I1.5共14个数字量输入端点,Q0.0~Q0.7、Q1.0、Q1.1共10个数字量输出端点。3.2.2数据存储区及元件功能2.变量存储器V用以存储运算的中间结果和其它数据。CPU224有VB0.0~VB5119.7的5K存储字节。可按位、字节、字或双字使用。3.内部标志位(M)存储区M作为控制继电器(又称中间继电器),用来存储中间操作数或其它控制信息。S7-200PLC编址范围M0.0~M31.7,可以按位、字节、字或双字来存取存储区的数据。4.顺序控制继电器(S)存储区S又称状态元件,以实现顺序控制和步进控制。S7-200PLC编址范围S0.0~S31.7,可以按位、字节、字或双字来存取数据。5.特殊标志位(SM)存储器CPU224编址范围SM0.0~SM179.7,共180个字节。其中SM0.0~SM29.7的30个字节为只读型区域。①SMB0为状态位字节,在每次扫描循环结尾由S7-200CPU更新,定义如下:SM0.0RUN状态监控,PLC在运行RUN状态,该位始终为1。SM0.1首次扫描时为1,PLC由STOP转为RUN状态时,ON(1态)一个扫描周期,用于程序的初始化。SM0.2当RAM中数据丢失时,ON一个扫描周期,用于出错处理。SM0.3PLC上电进入RUN方式,ON一个扫描周期。SM0.4分脉冲,该位输出一个占空比为50%的分时钟脉冲。用作时间基准或简易延时。SM0.5秒脉冲,该位输出一个占空比为50%的秒时钟脉冲。可用作时间基准。SM0.6扫描时钟,一个扫描周期为ON(高电平),另一为OFF(低电平)循环交替。SM0.7工作方式开关位置指示,0为TERM位置,1为RUN位置。为1时,使自由端口通讯方式有效。②SMB1为指令状态位字节,常用于表及数学操作,部分位定义如下:SM1.0零标志,运算结果为0时,该位置1。SM1.1溢出标志,运算结果溢出或查出非法数值时,该位置1。SM1.2负数标志,数学运算结果为负时,该位为1。3.2.2数据存储区及元件功能6.局部存储器(L)S7-200有64个字节的局部存储器,编址范围LB0.0~LB63.7,其中60个字节可以用作暂时存储器或者给子程序传递参数,最后4个字节为系统保留字节。7.定时器(相当于时间继电器)S7-200CPU中的定时器是对内部时钟累计时间增量的设备,用于时间控制。编址范围T0~T255(22X);T0~T127(21X)。8.计数器计数器主要用来累计输入脉冲个数。有16位预置值和当前值寄存器各一个,以及1位状态位,当前值寄存器用以累计脉冲个数,计数器当前值大于或等于预置值时,状态位置1。S7-200CPU提供有三种类型的计数器,增计数、减计数、增/减计数。编址范围C0~C255(22X),C0~C127(21X)。3.2.2数据存储区及元件功能9.模拟量输入/输出映像寄存器(AI/AQ)S7-200的模拟量输入电路将外部输入的模拟量(如温度、电压)等转换成1个字长(16位)的数字量,存入模拟量输入映像寄存器区域。AI编址范围AIW0,AIW2,……AIW62,起始地址定义为偶数字节地址,共有32个模拟量输入点。S7-200模拟量输出电路用来将模拟量输出映像寄存器区域的1个字长(16位)数字值转换为模拟电流或电压输输出。AQ编址范围AQW0,AQW2,……AQW62,起始地址也采用偶数字节地址,共有32个模拟量输出点10.累加器(AC)累加器是用来暂存数据,S7-200PLC提供了4个32位累加器AC0~AC3。累加器支持以字节(B)、字(W)和双字(D)的存取。。11.高速计数器(HC)CPU22X提供了6个高速计数器HC0、HC1……HC5(每个计数器最高频率为30KHz)用来累计比CPU扫描速率更快的事件。高速计数器的当前值为双字长的符号整数。S7-200PLC各编程元器件及操作数的有效编程范围如表3.5和表3.6所示。3.3I/O扩展基本单元的基础上,S7-200系统最多可扩展7个模块。S7-200系统的扩展模块有数字量、模拟量、通讯、现场设备接口等模块,型号详见P27表3.7。3.4S7-200系列PLC程序概念3.4.1梯形图编辑器(LAD)3.4.2语句表编辑器(STL)3.4.3功能块图编辑器(FBD)第5章S7-200PLC基本指令5.1基本逻辑指令5.1.1基本位操作指令1、指令LADSTL功能LDBITLDNBIT;用于网络段起始的常开/常闭触点ABITANBIT;常开/常闭触点串联,逻辑与/与非指令OBITONBIT;常开/常闭触点并联,逻辑或/或非指令=BIT;线圈输出,逻辑置位指令基本位操作指令操作数寻址范围:I,Q,M,SM,T,C,V,S,L等。指令助记符:LD(Load)、LDN(LoadNot)、A(And)、AN(AndNot)、O(Or)、ON(OrNot)、=(Out)置位指令,线圈输出。[例5.1]位操作指令程序应用工作原理:网络段1M0.0=(I0.0+M0.0)*I0.1网络段2Q0.1=(I0.2+I0.3)*I0.4NETWORK1LDI0.0//装入常开触点OM0.0//或常开触点ANI0.1//与常闭触点=M0.0//输出线圈 NETWORK2LDI0.2//装入常开触点OI0.3//或常开触点ANI0.4//与常闭触点=Q0.1//输出线圈3.STL指令对较复杂梯形图的描述方法(1)块“或”操作指令格式:OLD(无操作元件)块“或”操作,是将梯形图中相邻的两个以LD起始的电路块并联起来。(2)块“与”操作指令格式:ALD(无操作元件)块“或”操作是将梯形图中相邻的两个以LD起始的电路块串联起来。NETWORK1LDI0.1//装入常开触点AI0.2//与常开触点LDM0.0//装入常开触点ANI0.3//与常闭触点OLD//块或操作=M0.0//输出线圈NETWORK2LDI0.1//装入常开触点OM0.1//或常开触点LDI0.2//装入常开触点OM0.2//或常开触点ALD//块与操作=M0.1//输出线圈(3)栈操作指令LD装载指令是从梯形图最左侧母线画起的,如果要生成一条分支的母线,则需要利用语句表的栈操作指令来描述。栈操作语句表指令格式:LPS(无操作元件):(LogicPush)逻辑堆栈操作指令。LRD(无操作元件):(LogicRead)逻辑读栈指令。LPP(无操作元件):(LogicPop)逻辑弹栈指令。图5.4LPS,LRD,LPP指令的操作过程堆栈操作时将断点的地址压入栈区,栈区内容自动下移(栈底内容丢失)。读栈操作时将存储器栈区顶部的内容读入程序的地址指针寄存器,栈区内容保持不变。弹栈操作时,栈的内容依次按照后进先出的原则弹出,将栈顶内容弹入程序的地址指针寄存器,栈的内容依次上移。[例5.4]栈操作指令应用程序LDI0.0//装入常开触点LPS//建立栈指针(堆栈)LDI0.1//装入常开触点OI0.2//或常开触点ALD//块与操作=M0.0//输出线圈LRD//读栈LDI0.3//装入常开触点OI0.4//或常开触点ALD//块与操作=M0.1//输出线圈LPP//弹栈AI0.5//与常开触点=Q0.0//输出线圈逻辑堆栈指令(LPS)可以嵌套使用,最多为9层。为保证程序地址指针不发生错误,堆栈和弹栈指令必须成对使用,最后一次读栈操作应使用弹栈指令。5.1.2取非和空操作指令取非和空操作指令格式(LAD、STL、功能)NOT取非 NOPN空操作指令次数N=0~2553.AENO指令梯形图的指令盒指令右侧的输出连线为使能输出端ENO,用于指令盒或输出线圈的串联(与逻辑),不串联元件时,作为指令行的结束。AENO指令(AndENO)该指令的作用是和前面的指令盒输出端ENO相与,只能在语句表中使用。[例5.5]取非指令和空操作指令应用举例LDNI0.0NOT//求反NOP20//条件满足时空操作20次5.1.3置位/复位指令SS-BIT,N:从起始位(S-BIT)开始的N个元件置1。RS-BIT,N;从起始位(S-BIT)开始的N个元件清0。NETWORK1LDI0.0SQ0.0,1 NETWORK5LDI0.1RQ0.0,15.1.4边沿触发指令(脉冲生成)用途:边沿触发是指用边沿触发信号产生一个机器周期的扫描脉冲,通常用作脉冲整形。分类:边沿触发指令分为正跳变触发(上升沿)和负跳变触发(下降沿)两大类。正跳变触发指输入脉冲的上升沿,使触点ON一个扫描周期。负跳变触发指输入脉冲的下降沿,使触点ON一个扫描周期。EU(EdgeUp)正跳变,无操作元件ED(EdgeDown)负跳变,无操作元件[例5.7]边沿触发程序示例,程序运行的时序分析见右图。[例5.7]边沿触发程序示例NETWORK1LDI0.0//装入常开触点EU//正跳变=M0.0//输出NETWORK2LDM0.0//装入SQ0.0,1//输出置位NETWORK3LDI0.1//装入ED//负跳变=M0.1//输出NETWORK4LDM0.1//装入RQ0.0,1//输出复位I0.0的上跳沿,EU产生一个扫描周期时钟脉冲,M0.0线圈通电,M0.0常开触点闭合一个扫描周期,使输出置位线圈Q0.0触发有效(输出线圈Q0.0=1)并保持。I0.1下跳沿,ED产生一个扫描周期的时钟脉冲,驱动输出线圈M0.1通电一个扫描周期,M0.1常开触点闭合,使输出线圈Q0.0复位有效(Q0.0=0)并保持。5.1.5定时器1.工作方式分类通电延时型(TON)、有记忆的通电延时型(保持型)(TONR)、断电延时型(TOF)等三类。2.时基标准分类1ms、10ms、100ms三种类型,不同的时基标准,定时精度、定时范围和定时器的刷新方式不同。(1)定时精度:(2)定时范围:定时时间T=时基*预置值时基越大,定时时间越长,但精度越差。表5.5定时器工作方式及类型工作方式分辨率最大定时范围定时器号TONR1ms32.767sT0,T6410ms327.67sT1~T4,T65~T68100ms3276.7sT5~T31,T69~T95TON/TOF1ms32.767sT32,T9610ms327.67sT33~T36,T97~T100100ms3276.7sT37~T63,T101~T2553.定时器指令格式TON通电延时型TONR有记忆通电延时型TOF断电延时型IN—使能输入端;编程范围T0~T255;PT是预置值输入端,最大预置值32767;PT数据类型:INT。PT寻址范围见附表1。4.工作原理分析(1)通电延时型(TON)使能端(IN)输入有效时,定时器开始计时,当前值从0开始递增,大于或等于预置值(PT)时,定时器输出状态位置1(输出触点有效),当前值的最大值为32767。使能端无效(断开)时,定时器复位(当前值清零,输出状态位置0)。[例5.8]通电延时型定时器应用程序NETWORK1LDI0.2TONT33,+300 NETWORK2LDT33=Q0.0(2)有记忆通电延时型(TONR)使能端IN输入有效时,定时器开始计时,当前值递增,当前值大于或等于预置值PT时,输出状态位置1。使能端输入无效时,当前值保持,使能端IN再次接通有效时,在原记忆值的基础上递增计时。有记忆通电延时型(TONR)定时器采用线圈的复位指令(R)进行复位操作,当复位线圈有效时,定时器当前值清零,输出状态位置0。[例5.9]有记忆通电延时型定时器应用程序。NETWORK1LDI0.0TONRT65,+500 NETWORK2LDI0.1RT65,1 NETWORK3LDT65=Q0.0(3)断电延时型(TOF)使能端(IN)输入有效时,定时器输出状态位置1,当前值复位为0。使能端(IN)断开时,开始计时,当前值从0递增,当前值达到预置值时,定时器状态位复位置0,并停止计时,当前值保持。[例5.10]断电延时型定时器应用程序,程序运行结果见时序分析。NETWORK1LDI0.0TOFT37,+30 NETWORK2LDT37=Q0.05.通电延时定时器应用分析示例结论:用本身触点激励输入的定时器,时基为1ms和10ms时不能可靠工作,一般不宜使用本身触点作为激励输入。若将图5.13改成图5.14,无论何种时基都能正常工作。图5.13自身激励输入图5.14非自身激励输入5.1.6计数器指令计数器利用输入脉冲上升沿累计脉冲个数。S7-200系列PLC有递增计数(CTU)、增/减计数(CTUD)、递减计数(CTD)等三类计数指令。计数器的和基本结构与定时器基本相同,主要由预置值寄存器、当前值寄存器、状态位等组成。CTU(CounterUp)增计数器CTD(CounterDown)减计数器CTUD(CounterUp/Down)增/减计数器图中CU-增1计数脉冲输入端;CD-减1计数脉冲输入端;R-复位脉冲输入端;LD-减计数器的复位输入端。PV预置值(INT)最大范围32767。2.工作原理分析(1)增计数指令(CTU)增计数指令在CU端输入脉冲上升沿,计数器的当前值增1计数。当前值大于或等于预置值(PV)时,计数器状态位置1。当前值累加的最大值为32767。复位输入(R)有效时,计数器状态位复位(置0),当前计数值清零。(2)增/减计数指令(CTUD)增/减计数器CU输入端用于递增计数,CD输入端用于递减计数,指令执行时,CU/CD端计数脉冲的上升沿当前值增1/减1计数。当前值大于或等于计数器预置值(PV)时,计数器状态位置1。复位输入(R)有效或执行复位指令时,计数器状态位复0位,当前值清零。达到计数器最大值32767后,下一个CU输入上升沿将使计数值变为最小值(-32678)。同样达到最小值(-32678)后,下一个CD输入上升沿将使计数值变为最大值(32767)。[例5.11]增/减计数应用程序NETWORK1LDI4.0LDI3.0LDI2.0CTUDC48,+4 NETWORK2LDC48=Q0.0(3)减计数指令(CTD)复位输入(LD)有效时,计数器把预置值(PV)装入当前值存储器,计数器状态位复位(0)。CD端每一个输入脉冲上升沿,减计数器的当前值从预置值开始递减计数,当前值等于0时,计数器状态位置位(1),并停止计数。[例5.12]减计数指令应用程序NETWORK1LDI3.0LDI1.0CTDC50,+3 NETWORK2LDC50=Q0.05.1.7比较指令比较指令用于两个操作数按一定条件的比较。操作数可以是整数,也可以是实数(浮点数)。在梯形图中用带参数和运算符的触点表示比较指令,比较条件满足时,触点闭合,否则打开。1.指令格式装载LDB=IN1,IN2串联AB=IN1,IN2并联OB=IN1,IN2操作数IN1和IN2为整数比较比较运算符:==、<=、>=、<、>、<>操作数类型:字节比较B(Byte);(无符号整数)整数比较I(Int)/W(Word);(有符号整数)双字比较D(DoubleInt/Word);(有符号整数)实数比较R(Real);(有符号双字浮点数)2.比较指令程序设计举例[例5.13]整数(16位有符号整数)比较指令应用计数器C0的当前值大于或等于1000时,输出线圈Q0.0通电。NETWORK1LDW>=C0,+1000=Q0.0定时器分析要点(1)通电延时型(TON)使能端(IN)输入有效时,当前值从0开始递增,大于或等于预置值(PT)时,输出状态位置1。使能端无效(断开)时,定时器复位(当前值清零,输出状态位置0)。(2)有记忆通电延时型(TONR)使能端(IN)输入有效时(接通),当前值从0递增,当前值大于或等于预置值(PT)时,输出状态位置1。使能端输入无效(断开)时,当前值保持(记忆),使能端(IN)再次接通有效时,在原记忆值的基础上递增计时。(TONR)定时器采用线圈的复位指令(R)进行复位操作,当复位线圈有效时,定时器当前值清零,输出状态位置0。(3)断电延时型(TOF)使能端(IN)输入有效时,定时器输出状态位立即置1,当前值复位(为0)。使能端(IN)断开时,开始计时,当前值从0递增,当前值达到预置值时,定时器状态位复位置0,并停止计时,当前值保持。计数器分析要点(1)增计数指令(CTU)增计数指令在CU端输入脉冲上升沿,当前值增1计数。当前值大于或等于预置值(PV)时,计数器状态位置1。复位输入(R)有效时,计数器状态位复位(置0),当前计数值清零。(2)增/减计数指令(CTUD)增/减计数器有两个脉冲输入端,CU/CD端的计数脉冲上升沿增1/减1计数。当前值大于或等于预置值(PV)时,计数器状态位置1。复位输入(R)有效或执行复位指令时,计数器状态位置0,当前值清零。(3)减计数指令(CTD)复位输入(LD)有效时,计数器把预置值(PV)装入当前值存储器,计数器状态位置0。CD端输入脉冲上升沿,减计数器当前值从预置值开始递减计数,当前值等于0时,计数器状态位置1,停止计数。5.2算术、逻辑运算指令5.2.1算术运算指令IN1+IN2=OUTIN1—IN2=OUT加减指令盒由指令类型,使能端EN,操作数(IN1、IN2)输入端,运算结果输出OUT,逻辑结果输出端ENO等组成。(5)加法运算应用举例NETWORK1LDI0.0//装入常开触点MOVWVW100,VW200//VW100→VW200+I+100,VW200//VW200+100=VW2002.乘/除运算乘法运算除法运算MULI/DIVI为整数乘/除运算,MULDI/DIVDI双整数乘/除运算,MUL/DIV整数乘/除的结果双整数输出,MULR/DVIR实数乘/除运算指令执行的结果:乘法IN1*IN2=OUT除法IN1/IN2=OUT[例5.15]乘/除法指令的应用NETWORK1LDNI0.0//装入常闭触点*RAC1,VD100//实数乘法/RVD10,VD200//实数除法运行结果:5.2.3增1/减1计数增1/减1计数器用于自增、自减操作,以实现累加计数和循环控制等程序的编制。字节、字、双字增1OUT+1=OUT字节、字、双字减1OUT-1=OUT5.2.4逻辑运算指令逻辑运算是对无符号数进行的逻辑处理,主要包括逻辑与、逻辑或、逻辑异或和取反等运算指令。与(或、异或)指令功能:使能输入有效时,把两个字节(字、双字)长的输入逻辑数按位相与(或、异或),得到的一个字节(字、双字)逻辑运算结果,送到OUT指定的存储器单元输出。取反指令功能:使能输入有效时,将一个字节(字、双字)长的逻辑数按位取反,得到的一个字节(字、双字)逻辑运算结果,送到OUT指定的存储器单元输出。[例5.18]字或/双字异或/字求反/字节与操作编程举例。NETWORK1LDI0.0MOVWLW10,LW30//LW10=LW30ORWLW20,LW30//字或操作 NETWORK2LDI0.1MOVDVD100,VD120XORDVD200,VD120//双字异或操作 NETWORK3LDI0.2MOVWAC0,AC1INVWAC1//字取反操作 NETWORK4LDI0.3MOVBAC0,AC1ANDB255,AC1//字节与操作5.3数据处理指令数据处理指令包括数据传送指令,交换、填充指令,移位指令等。5.3.1数据传送1.单个数据传送LADSTLMOVIN,OUT//IN=OUT2.数据块传送指令类型:字节、字或双字的N个数据成组传送。功能:使能输入(EN)有效时,把从输入(IN)字节开始的N个字节数据传送到以输出字节(OUT)开始的N个字节、字或双字中。[例5.19]将变量存储器VW100中内容送到VW200中。NETWORK1LDI0.0//使能输入MOVWVW100,VW200//VW100=VW2005.3.3移位指令移位指令分为类左、右移位和循环左、右移位及寄存器移位指令三大类。左、右移位和循环左、右移位指令按移位数据的长度又分为字节型、字型、双字型三种。左、右移位指令(SHL、SHR)的功能:使能输入有效时,将输入的字节、字或双字(IN)左、右移N位后(右、左端补0),将结果输出到OUT所指定的存储单元中,最后一次移出位保存在SM1.1。循环左、右移位指令(ROL、ROR)的功能:使能输入有效时,字节、字或双字(IN)数据循环左移N位后,将结果输出到OUT所指定的存储单元中,并将最后一次移出位送SM1.1。5.3.3移位指令[例5.21]将VD0右移2位送AC0。NETWORK1LDI0.0//使能输入MOVDVD0,AC0//VD0=AC0SRDAC0,2//AC0右移2位寄存器移位指令最大移位位数N≤数据类型(B、W、D)对应的位数,移位位数(次数)N为字节型数据。4.寄存器移位指令寄存器移位指令是一个移位长度可指定的移位指令。SHRBI1.1,M1.0,+10功能:指令执行时,DATA位的值移入移位寄存器。S-BIT为寄存器的最低位,N为移位寄存器的长度(1~64)。每次使能有效时,整个移位寄存器移动1位。N为正值时,左移位(由低位到高位),DATA值从S-BIT位移入,移出位进入SM1.1;N为负值时右移位(由高位到低位),S-BIT移出到SM1.1,高端补充DATA移入位的值。最高位的计算方法:(N的绝对值-1+(S_BIT的位号))/8,余数即是最高位的位号,商与S_BIT的字节号之和即是最高位的字节号。5.4程序控制类指令包括系统控制、跳转、循环、子程序调用、顺序控制等指令。5.4.1系统控制类指令1.暂停指令(STOP)使能输入有效时,立即终止程序的执行,2.结束指令(END/MEND)结束指令直接连在左侧电源母线时,为无条件结束指令(MEND),不连在左侧母线时,为条件结束指令(END)。3.看门狗复位指令(WDR)使能输入有效时,将看门狗定时器复位。在没有看门狗错误的情况下,可以增加一次扫描允许的时间。若使能输入无效,看门狗定时器定时时间到,程序将中止当前指令的执行,重新启动,返回到第一条指令重新执行。[例5.22]暂停(STOP)、条件结束(END)、看门狗指令应用举例。例5.22题图5.4.2跳转、循环指令1.程序跳转指令(JMP)JMPn跳转指令LBLn跳转标号跳转指令(JMP)和跳转地址标号指令(LBL)配合实现程序的跳转。使能输入有效时,使程序跳转到指定标号n处执行(在同一程序内),跳转标号n=0~255。使能输入无效时,程序顺序执行。2.循环控制指令(FOR)循环控制指令,用于描述一段程序的重复循环执行。由FOR和NEXT指令构成程序的循环体。FOR标记循环开始,NEXT为循环体结束。FOR指令为指令盒格式,主要参数有使能使能输入EN,当前值计数器INDX,循环次数初始值INIT,循环计数终值FINAL。工作原理:使能输入(EN)有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前计数器(INDX)增1,达到终值(FINAL)时,循环结束。3.子程序调用指令(SBR)子程序可以多次被调用,也可以嵌套(最多8层),还可以递归调用(自己调自己)。CALLSBR0//子程序调用CRET//条件返回RET//无条件返回(自动)[例5.23]循环、跳转及子程序调用指令应用程序。NETWORK1 LDW>=AC0,+100JMP10//跳转 NETWORK2LDM0.0FORVW100,+1,+20//循环开始 NETWORK3LDI0.0CALLSBR_0//调用子程序 NETWORK4NEXT//循环返回 NETWORK5LDI0.1SQ0.0,1//位置1 NETWORK6LBL10//标号[例5.23]循环、跳转及子程序调用指令应用程序。子程序SUB0NETWORK1LDSM0.0INCWVW200//VW200增1 NETWORK2LDI0.2CRET//条件返回4.带参数的子程序调用指令子程序可能有要传递的参数(变量和数据),这时可以在子程序调用指令中包含相应参数,它可以在子程序与调用程序之间传送。带参数子程序调用指令示例局部变量表中的变量有IN、OUT、IN/OUT和TEMP等4种类型。子程序最多可传递6个参数,传递的参数在子程序局部变量表中定义。EN和IN1的输入为布尔型能流输入,地址参数&VB100是将一个双字无符号的值传递到子程序。子程序调用时,输入参数被拷贝到局部存储器。子程序完成时,从局部存储器拷贝输出参数到指定的输出参数地址。4.带参数的子程序调用指令局部变量表IN类型:将指定位置的参数传入子程序。OUT类型:从子程序的结果值(数据)传入到指定参数位置。IN/OUT类型:将指定位置的参数传到子程序,从子程序来的结果值被返回到同样的地址。TEMP类型:局部存储器只用作子程序内部的暂时存储器,不能用来传递参数。第五章小结本章介绍了SIMATIC指令集LAD和STL编程语言的四大类基本操作指令的指令格式、原理分析和使用方法。1.基本位操作指令包括位操作、置/复位、边沿触发、定时、计数、比较等指令,是梯形图基本指令的基础,也是最常用的指令类型。2.运算指令包括算术运算和逻辑运算两大类。算术运算有加、减、乘、除运算和常用的数学函数变换;逻辑运算包括逻辑与、或指令和取反指令等。3.数据处理指令包括数据的传送指令,交换、填充指令,移位指令等。4.程序控制指令包括系统控制,跳转、循环、顺序控制等指令;系统控制类指令主要包括暂停、结束、看门狗等指令。
/
本文档为【s7-200】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索