




已阅读5页,还剩242页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西门子可编程序控制器,东北石油大学杨松山,第1章概述,1.1可编程序控制器的由来可编程序控制器(ProgrammableController)简称为PC可编程序逻辑控制器(ProgrammableLogicCntroller)。简称为PLC,1968年美国最大的汽车制造厂家通用汽车公司(GM)提出了研制可编程序控制器的基本设想,即(1)能用于工业现场。(2)能改变其控制“逻辑”,而不需要变动组成它的元件和修改内部接线。(3)出现故障时易于诊断和维修。1969年,美国数字设备公司(DEC)研制出了世界上第一台PLC。我国1974年研制,77年应用。,1.2可编程序控制器的定义、特点,一、定义:可编程序控制器是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或生产过程。可编程序控制器及其有关设备,都应按易于使工业控制系统形成一个整体,易于扩充其功能的原则设计。”,二、特点1编程方法简单易学2功能强,性能价格比高3硬件配套齐全用户使用方便。适应性强4可靠性高。抗干扰能力强5系统的设计、安装、调试工作量少6维修工作量小,维修方便7体积小,能耗低,1.3可编程序控制器的应用领域1.数字量逻辑控制2.运动控制3.闭环过程控制4.数据处理5.通信联网,1.4可编程序控制器的发展趋势,1向高性能,高速度、大容量发展2大力发展微型可编程序控制器3.大力开发智能型lO模块和分布式IO子系统4基于个人计算机的编程软件取代手持式编程器5可编程序控制器编程语言的标准化6可编程序控制器通信的易用化和“傻瓜化”7可编程序控制器的软件化与Pc化8组态软件引发的七位计算机编程革命9可编程序控制器与现场总线相结合,第2章可编程序控制器的硬件结构与工作原理,2.1可编程序控制器的基本结构2.1.1基本结构组成:CPU模块、输入模块、输出模块、编程装置。,1CPU模块1)CPU芯片作用:在可编程序控制器控制系统中,CPU模块相当于人的大脑,它不断地采集输入信号,执行用户程序,刷新系统的输出。2)存储器:作用:存放系统程序,用户程序和数据。系统程序:决定PLC的基本智能,由厂家设计,并存入ROM、EEPROM。用户不能修改。用户程序:根据要求,用PLC的编程语言,编制的程序,用户用编程器写入RAM或EEPROM。,类型(1)随机存取存储器(RAM)用户可以用编程装置读出RAM中的内容,也可以将用户程序写入RAM,它是易失性的存储器,它的电源中断后,储存的信息将会丢失。(2)只读存储器(ROM)ROM的内容只能读出,不能写入。它是非易失的,它的电源消失后,仍能保存储存的内容。ROM一般用来存放可编程序控制器的系统程序。,(3)可电擦除可编程的只读存储器(EEPROM或E2PROM)它是非易失性的,但是可以用编程装置对它编程兼有ROM的非易失性和RAM的随机存取优点,但是将信息写入它所需的时间比RAM长得多。EEPROM用来存放用户程序和需长期保存的重要数据。,2I0模块作用:是系统的眼、耳、手、脚,是联系外部现场和CPU模块的桥梁。1)输入模块作用:接收和采集输入信号。输人电路:设有RC滤波电路和光电耦合器。2)输出模块作用:控制输出设备,执行装置。输出电路:晶体管和场效应管、双向晶闸管,小型继电器。,3、编程装置作用:编程装置用来生成用户程序,并对它进行编辑、检查和修改。1).手持式编程器:不能直接输人和编辑梯形图,只能输入和编辑指令表程序,因此又叫做指令编程器。2).编程软件编程:在屏幕上直接生成和编辑梯形图、指令表、功能块图和顺序功能图程序,并可以实现不同编程语言的相互转换。,4、电源可编程序控制器使用220V交流电源或24V直流电源。内部的开关电源为各模块提供DC5V、12V、24V等直流电源。,2.1.2可编程序控制器的物理结构1整体式(S7200)(图2-2)2模块式(s7300和s7400系列)(图2-3)。2.1.3可编程序控制器的外部接线CPU222模块的外部接线图(见图2-6),SIEMENSS7-200可编程控制器,4.1S7系列可编程控制器概述4.1.1概述,4.1.2S7-200系列PLC的系统组成,图4-2S7-200的基本构成,S7-200型的PLC主机单元,S7-200型的PLC主机单元的CPU共有两个系列:CPU21X系列和CPU22X系列。CPU21X系列CPU包括CPU212、CPU214、CPU215、CPU216;CPU22X系列CPU包括CPU221、CPU222、CPU224、CPU224XP和CPU226。CPU21X系列属于S7-200的第一代产品,是即将被淘汰的产品,不做具体的介绍,目前的主流产品是CPU22X系列。除了CPU221主机以外,其它CPU主机均可以进行系统扩展。图4-3展示一台带有扩展模块的S7-200PLC。,S7-200的CPU22X系列PLC的主要技术数据,表4-1CPU22X系列的主要技术数据,4.2S7-200CPU存储器的数据类型及寻址方式,4.2.1S7-200寻址1)数据格式S7-200CPU以不同的数据格式保存和处理信息。S7-200支持的数据格式完全符合通用的相关标准。它们占用的存储单元长度不同,内部的表示格式也不同。这就是说,数据都有各自规定的长度,表示的数值范围也不同。S7-200的SIMATIC指令系统针对不同的数据格式提供了不同类型的编程命令。数据格式和取值范围如表4-6所列。,表4-6数据格式和取值范围,2)数据的寻址长度,在S7-200系统中,可以按位、字节、字和双字对存储单元寻址。寻址时,数据地址以代表存储区类型的字母开始,随后是表示数据长度的标记,然后是存储单元编号;对于二进制位寻址,还需要在一个小数点分隔符后指定位编号。图4-4位寻址举例位寻址的举例如图4-4所示。字节寻址的举例如图4-5所示。,多字节组合寻址,,S7-200遵循“高地址、低字节”的规律。如果将16#AB(十六进制立即数)送人VBl00,16#CD送人VBl01,那VWl00的值将是16斡ABCD。即VBl01作为高地址字节,保存数据的低字节部分。,(1)输入过程映像寄存器:I,在每次扫描周期的开始,CPU对物理输入点进行采样,并将采样值写入输入过程映像寄存器中。可以按位、字节、字或双字来存取输入过程映像寄存器中的数据。位:I字节地址位地址I0.1字节、字或双字:I长度起始字节地址IB4IWlID0,(2)输出过程映像寄存器:Q,在每次扫描周期的结尾,CPU将输出过程映像寄存器中的数值复制到物理输出点上。可以按位、字节、字或双字来存取输出过程映像寄存器中的数据。位:Q字节地址位地址Q1.1字节、字或双字:Q长度起始字节地址QB5QWlQD0,(3)变量存储区:V,可以用V存储器存储程序执行过程中控制逻辑操作的中间结果,也可以用它来保存与工序或任务相关的其他数据。可以按位、字节、字或双字来存取V存储器中的数据。位:V字节地址位地址V10.2字节、字或双字:V长度起始字节地址VBl00VW200VD300,(4)位存储区:M,可以用位存储区作为控制继电器来存储中间操作状态和控制信息。可以按位、字节、字或双字来存取位存储区中的数据。位:M字节地址位地址M267字节、字或双字:M长度起始字节地址MBOMWl3MD20,(5)定时器存储区:T,在S7-200CPU中,定时器可用于时间累计。定时器寻址有两种形式:当前值:16位有符号整数,存储定时器所累计的时间。定时器位:按照当前值和预置值的比较结果置位或者复位。两种寻址使用同样的格式,用定时器地址(T+定时器号,如T33)来存取这两种形式的定时器数据。究竟使用哪种形式取决于所使用的指令。位:T定时器号T37字:T定时器号T96,(6)计数器存储区:C,在S7-200CPU中,计数器可以用于累计其输入端脉冲电平由低到高的次数。计数器有两种寻址形式:当前值:16位有符号整数,存储累计值。计数器位:按照当前值和预置值的比较结果来置位或者复位。可以用计数器地址(C+计数器号,如CO)来存取这两种形式的计数器数据。究竟使用哪种形式取决于所使用的指令。位:C计数器号C0字:C计数器号C255,(7)高速计数器:HC,高速计数器对高速事件计数,它独立于CPU的扫描周期。高速计数器有一个32位的有符号整数计数值(或当前值)。若要存取高速计数器中的值,则应给出高速计数器的地址,即存储器类型(HC)加上计数器号(如HC0)。高速计数器的当前值是只读数据,可作为双字(32位)来寻址。格式:HC高速计数器号HC1,(8)累加器:AC,累加器是可以像存储器一样使用的读写存储区。例如,可以用它来向子程序传递参数,也可以从子程序返回参数,以及用来存储计算的中间结果。S7-200提供4个32位累加器(AC0、ACl、AC2和AC3)。可以按字节、字或双字的形式来存取累加器中的数值。被操作的数据长度取决于访问累加器时所使用的指令。,(9)顺序控制继电器:S,顺序控制继电器位(S)用于组织机器操作或进入等效程序段的步进控制。顺序控制继电器(SCR)提供控制程序的逻辑分段,可以按位、字节、字或双字来存取S位。位S字节地址位地址S31字节、字、双字S长度起始字节地址SB4SW24SD20,(10)局部存储器:L,可以按位、字节、字或双字访问局部存储器。可以把局部存储器作为间接寻址的指针,但不能作为间接寻址的存储器区。位L字节地址位地址L02字节、字、双字L长度起始字节地址LB33LWl0LDl5,(11)特殊存储器:SM,位:SM字节地址位地址SMO1字节、字或者双字:SM长度起始字节地址SMB86,(12)模拟量输入:AI,S7-200将模拟量值(如温度或电压)转换成1个字长(16位)的数据。可以用区域标志符(AI)、数据长度(W)及字节的起始地址来存取这些值。因为模拟值输入为1个字长,且从偶数位字节(如0,2,4)开始,所以必须用偶数字节地址(如AIW0,AIW2,AIW4)来存取这些值。模拟量输入值为只读数据。模拟量转换的实际精度是12位。格式:AIW起始字节地址AIW4,(13)模拟量输出:AQ,S7-200把1个字长(16位)数字值按比例转换为电流或电压。可以用区域标志符(AQ)、数据长度(W)及字节的起始地址来改变这些值。因为模拟量为一个字长,且从偶数字节(如0,2,4)开始,所以必须用偶数字节地址(如AQW0,AQW2,AQW4)来改变这些值。模拟量输出值为只写数据。模拟量转换的实际精度是12位。格式:AQW起始字节地址AQW4,表4-8S7-200CPU存储器范围和特性一览表,表4-8S7-200CPU存储器范围和特性一览表(续),表4-9常数,4.3S7-200可编程控制器的指令系统,在S7-200的指令系统主要包括以下几种:位操作指令,包括逻辑控制指令、定时器指令、计数器指令和比较指令。运算指令,包括四则运算,逻辑运算,数学函数指令。数据处理指令,包括传送、移位、字节交换和填充指令。表功能指令,包括对表的存取和查找指令。转换指令,包括数据类型转换、编码和译码、七段码指令和字符串转换指令。在基本指令中,位操作指令是其它所有指令应用的基础,非常重要,因此是需要重点掌握的内容。除位操作指令外,其它的基本指令反映了PLC对数据运算和数据处理能力,这些指令拓宽了PLC的应用领域。,4.3.1基本逻辑指令,1)LD(Load)、LDN(LoadNot)和线圈驱动指令=(Out)LD:常开触点逻辑运算开始,装入常开触点。LDN:常闭触点逻辑运算开始,装入常闭触点。=:输出指令,线圈驱动。,2)触点串联指令A(And)和AN(AndNot),A:常开触点串联连接。AN:常闭触点串联连接。A和AN的操作数为:I、Q、M、SM、T、C、V、S。,3)触点并联指令O(Or),ON(OrNot),O:常开触点并联连接。ON:常闭触点并联连接。操作数为:I、Q、M、SM、T、C、V、S。,4)串联电路块的并联指令OLD,4)串联电路块的并联指令OLDOLD(OrLoad),用于串联电路块为并联连接。,5)并联电路块的串联指令ALD,ALD(AndLoad),用于并联电路块的串联连接。,6)置位、复位指令S(Set)/R(Reset),S置位即置1,R复位即置0。置位和复位指令可以将位存储区的某一位开始的一个或多个(最多可达255个)同类存储器位置1或置0。开始位的操作数为:Q、M、SM、T、C、V、S。数量位的操作数为:VB、IB、QB、MB、SMB、LB、SB、AC、常数等。,7)脉冲生成指令EU(EdgeUp)和ED(EdgeDown),EU指令在对应输入(I0.0)有上升沿时,产生一宽度为扫描周期的微分脉冲,ED指令在对应输入(I0.0)有下降沿时,产生一宽度为扫描周期的微分脉冲,,8)逻辑结果取反指令NOT,NOT指令用于将NOT指令左端的逻辑运算结果取反。NOT指令无操作数。,9)立即数指令I(Immediate)(LDI、LDNI、AI、ANI、OI、ONI、=I、SI、RI),在程序中遇到立即指令时,若涉及到输入触点,则CPU绕过输入映像寄存器,直接读入输入点的通断状态作为等量齐观处理的依据,但不对映像寄存器作刷新处理。若涉及输出线圈,则将除结果写入映像寄存器PIQ外,更直接以结果驱动实际输出而不等待程序结束指令。,4.3.2定时、计数器和比较指令,1)定时器指令3种类型的定时器:通电延时定时器TON、有记忆通电延时定时器TONR和断电延时定时器TOF,总共提供256个定时器T0T255,其中TONR为64个,其余192个可定义为TON或TOF。定时精度(时间增量/时间单位/分辨率)可分为3个等级:1ms、10ms、100ms。表4-10CPU22X系列定时器的定时精度及编号,(1)接通延时定时器指令TON(On-DelayTimer)。,(2)有记忆接通延时定时器指令TONR(RetentiveOn-DelayTimer),有记忆接通延时定时器TONR,用于多个时间间隔的累计定时。,(3)断开延时定时器指令TOF(Off-DelayTimer)。,断开延时定时器TOF用于输入断开后单一间隔的定时。,定时器的刷新方式,1ms定时器由系统每隔lms刷新一次,与扫描周期及程序处理无关,因而当扫描周期较长时,在一个周期内可能被多次刷新,其当前值在一个周期内不一定保持一致;1Oms定时器则由系统在每个扫描周期开始时自动刷新,由于是每个扫描周期只刷新一次,故在每次程序处理期间,其当前值为常数;lOOms定时器则在该定时器指令执行时才被刷新。,1ms、10ms、100ms定时器的定时精度,其预设值必须大于最小需要的时间间隔。使用1ms定时器要确保至少56ms的时间间隔,预设值应大于57。使用10ms定时器要确保至少140ms的时间间隔,预设值应大于15。使用100ms定时器要确保至少2100ms的时间间隔,预设值应大于22。,2)计数器指令,S7-200计数器指令有3种类型:递增计数CTU、增减计数CTUD和递减计数CTD,共计256个,编号为C0C255。指令操作数有4方面:编号、预设值、脉冲输入和复位输入。每个计数器只能使用一次,不能重复使用同一计数器的线圈编号。每个计数器有一个16位的当前值寄存器及一个状态位,最大计数值PV的数据类型为整数型INT。寻址范围为:VW,IW,QW,NW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD及常数。,(1)递增计数器指令CTU(CouterUp),(2)递减计数器指令CTD(CouterDown),(3)增减计数器指令CTUD(CouterUp/Down),增减计数器的计数范围为-3276832767。当CTUD计数到最大值32767后,如CU端又有计数脉冲输入,在这个计数脉冲的上升沿,使当前值寄存器跳变到最小值-32768;反之,在当前值为最小值-32768后,如CD端又有计数脉冲输入,在这个计数脉冲的上升沿,使当前值寄存器跳变到最大值32767。,3)比较指令,比较指令是将两个操作数IN1和IN2按指定的条件作比较,条件成立时触点就闭合。比较运算符有:等于(=),大于等于(),小于等于(),大于(),小于()。在梯形图中,比较指令是以常开触点的形式编程的,在常开触点的中间注明比较参数和比较运算符。当比较的结果为真时,该动触点就闭合。比较指令的类型有:字节(BYTE)比较、整数(INT)比较、双字整数(DINT)比较和实数(REAL)比较。,(1)字节比较指令,字节比较用于比较两个字节型整数值IN1和IN2的大小,字节比较是无符号的。比较式可以是LDB、AB或OB后直接加比较运算符构成。如:LDB=、AB、OB等。整数IN1和IN2的寻址范围:VB、IB、QB、MB、SB、SMB、LB、*VD、*AC、*LD和常数。指令格式例:LDB=VB10,VB12ABMB0,MB1OBAC1,116,(2)整数比较指令,整数比较用于比较两个一字长整数值IN1和IN2的大小,整数比较是有符号的(整数范围为16#800016#7FFF之间)。比较式可以是LDW、AW或OW后直接加比较运算符构成。如:LDW=、AW、OW等。整数IN1和IN2的寻址范围:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数。指令格式例:LDW=VW10,VW12AWMW0,MW4OWAC2,1160,(3)双字整数比较指令,双字整数比较用于比较两个双字长整数值IN1和IN2的大小,双字整数比较是有符号的(双字整数范围为16#80000000(-2147483648)16#7FFFFFFF(2147483647)之间。指令格式例:LDD=VD10,VD14ADMD0,MD8ODAC0,1160000LDDHC0,*AC0,(4)实数比较指令,实数比较用于比较两个双字长实数值IN1和IN2的大小,实数比较是有符号的(负实数范围为-1.175495E-38和-3.402823E+38,正实数范围为+1.175495E-38和+3.402823E+38)。比较式可以是LDR、AR或OR后直接加比较运算符构成。指令格式例:LDR=VD10,VD18ARMD0,MD12ORAC1,1160.478AR*AC1,VD100,(5)数据比较指令应用实例,一自动仓库存放某种货物,最多6000箱,需对所存的货物进出计数。货物多于1000箱,灯L1亮;货物多于5000箱,灯L2亮。分析:需要检测某种货物的进、出货情况,可以用增减计数器进行统计。L1和L2分别受Q0.0和Q0.1控制,数值1000和5000分别存储在VW20和VW30字存储单元中。,4.3.3程序控制指令,1)条件结束指令END它根据前面的逻辑关系,终止用户主程序,并返回主程序起始点。该指令只能用在主程序,而不能用在子程序或中断程序中。2)暂停指令STOP暂停指令使CPU立即终止程序的执行,强迫CPU从RUN方式转变为STOP方式。如果暂停指令在中断程序中执行,该中断立即停止,但继续扫描程序的剩余部分,直至本次扫描完成后,终止程序的执行。,3)顺序控制继电器指令,4)跳转及标号指令,跳转及标号指令成对出现在程序中,跳转指令(JMP)可使程序流程转移到同一程序中指定的标号(n)处。标号指令(LBL)是使程序跳转到指定的目标位置(n)。跳转及标号指令可以分别用在主程序、子程序或中断程序中。但不能从主程序跳到子程序或中断程序,同样也不能从子程序或中断程序跳出。操作数n:0255。,4.3.4算术指令,1)加法指令加法操作是对两个有符号数进行相加。包括整数加法指令+I,双整数加法指令+D以及实数加法指令+R。(1)整数加法指令:整数加法指令名称为ADD_I,整数加法指令+I在梯形图(LAD)及功能块图(FBD)中,以功能框的形式编程。在整数加法功能框中,使能输入端为EN(Enable),允许输出端为ENO(EnableOutput),将两个单字长(16位)的符号整数IN1和IN2进行相加,产生一个16位整数结果OUT。整数加法将影响特殊继电器SM1.0(零)、SM1.1(溢出)、SM1.2(负)。影响允许输出正常工作的条件运行是:SM1.1(溢出),SM4.3运行时间,0006(间接寻址)。整数加法指令中,操作数的寻址范围见表4-12。,表4-12整数加法操作数的寻址范围,(2)双整数加法指令,双整数加法指令名称ADD_DI,,(3)实数加法指令,表4-16实数加法操作数的寻址范围,2)减法指令,减法指令是对两个有符号数进行相减操作。与加法指令一样,也可分为整数减法指令(-I)、双整数减法指令(-D)及实数减法指令(-R)。这三种减法指令与所对应的加法指令除运算法则不同之外,其他方面基本相同。,指令格式:-IIN2,OUT(整数减法)-DIN2,OUT(双整数减法)-RIN2,OUT(实数减法)例:-IAC0,VW4,3)乘法指令,乘法指令是对两个有符号数进行相乘运算,包括:整数乘法指令I,完全整数乘法指令MUL,双整数乘法D以及实数乘法指令R。,4)除法指令,除法指令是对2个有符号数进行相除运算,与乘法指令一样,也可以分为整数除法指令(/I),完全整数除法(DIV),双整数除法指令(/D)及实数除法指令(/R)。在梯形图LAD及功能块FBD中,除法指令以功能框的形式进行编程,指令名称分别为:整数除法指令:DIV_I完全整数除法指令:DIV双整数除法指令:DIV_DI实数除法指令:DIV_R指令执行结果,IN1/IN2=OUT。各除法指令的操作数寻址范围与对应的乘法指令相同。除法指令影响特殊继电器SM1.0(零),SM1.1(溢出),SM1.2(负),SM1.3(被0除)。,例:完全整数除法DIVVW10,VD100整数除法/IVW20,VW200,两条指令的编程及执行情况比较如图4-31所示。,5)增减指令,增减指令又称为自动加1或自动减1指令。数据长度可以是字节、字、双字。(1)字节加1指令INCB和字节减1指令DECB:当使能输入端EN有效时,INCB将1字节长的无符号数IN自动加1;DECB是将1字节长的无符号数IN自动减1,得到的输出结果OUT为1个字节长的无符号数。,(2)字加1指令INCW和字减1指令DECW,当使能输入端EN有效时,INCW是将一个字长的有符号数IN自动加1;DECW是将一个字长的有符号数IN自动减1;得到的输出结果OUT为1个字节长的有符号数。,4.3.5逻辑运算指令,逻辑运算指令是对逻辑数(无符号数)进行处理,包括逻辑与、逻辑或、逻辑异或,取反等逻辑操作,数据长度可以是字节、字、双字。1)字节逻辑运算指令ANDB,ORB,XORB,INVB字节(1)字节与指令ANDB:当使能输入端EN有效时,对2个1字节长的逻辑数IN1和IN2,按位相与,得到1字节的运算结果放OUT。在语句表STL中,IN2(或IN)与OUT为同一个存储单元,字节逻辑运算的指令格式是ANDBIN1,OUT。指令执行结果为:IN1ANDBIN2(OUT)OUT。(2)字节或指令ORB:当使能输入端EN有效时,对2个1字节长的逻辑数IN1和IN2,按位相或,得到1字节的运算结果放OUT。在语句表STL中,IN2(或IN)与OUT为同一个存储单元,字节逻辑运算的指令格式是ORBIN1,OUT。指令执行结果为:IN1ORBIN2(OUT)OUT。(3)字节异或指令XORB:当使能输入端EN有效时,对2个1字节长的逻辑数IN1和IN2,按位相异或,得到1字节的运算结果放OUT。在语句表STL中,IN2(或IN)与OUT为同一个存储单元,字节逻辑运算的指令格式是XORBIN1,IN2(OUT)。指令执行结果为:IN1XORBIN2(OUT)OUT。(4)字节取反指令INVB:当使能输入端EN有效时,对2个1字节长的逻辑数IN,按位取反,得到1字节的运算结果放OUT。,字节逻辑运算过程,2)字逻辑运算指令ANDW,ORW,XORW,INVW,(1)字与指令ANDW:当使能输入端EN有效时,对2个1字长的逻辑数IN1和IN2,按位相与,得到1个字长的运算结果放OUT。(2)字或指令ORW:当使能输入端EN有效时,对2个1字长的逻辑数IN1的IN2,按位相或,得到1个字长的运算结果放OUT。(3)字异或指令XORW:当使能输入端EN有效时,对2个1字长的逻辑数IN1和IN2,按位相异或,得到1个字长的运算结果放OUT。(4)字取反指令INVW:当使能输入端EN有效时,对1个字长的逻辑数IN,按位取反,得到1个字长的运算结果放OUT。字逻辑运算过程见表4-29。,表4-29字逻辑运算过程,3)双字逻辑运算指令ANDD,ORD,WORD,INVD,(1)双字与指令ANDD:当使能输入端EN有效时,对2个双字长的逻辑数IN1和IN2,按位相与,得到1个双字长的运算结果放OUT。双字与指令格式为:ANDDIN1,OUT。指令执行结果为:IN1ANDDIN2(OUT)=OUT。(2)双字或指令ORD:当使能输入端EN有效时,对2个双字长的逻辑数IN1和IN2,按位相或,得到1个双字长的运算结果放OUT。双字或指令格式为:ORDIN1OUT。指令执行结果为:IN1ORDIN2(OUT)OUT。(3)双字异或指令XORD:当使能输入端EN有效时,对2个双字长的逻辑数IN1和IN2,按位异或,得到1个双字长的运算结果放OUT。双字异或指令格式为:XORDIN1,IN2(OUT)指令执行结果为:IN1XORDIN2(OUT)OUT。(4)双字取反指令INVD:当使能输入端EN有效时,对1个双字长的逻辑运算数IN,按位取反,得到1个双字长的运算结果放OUT。双字取反指令格式为:INVDOUT。指令执行结果为:INVDIN(OUT)OUT。,举例,4.3.6传送指令,传送指令即数据传送指令,它是将数据从一个数据区拷贝到另一个数据区。依据每次数据传送的长度不同,可分为单个传送指令和块传送指令。单个传送指令每次传送1个数据,传送数据的类型包括:传送字节、传送字、传送双字和传送实数。,1)MOVB,BIR,BIW传送字节指令,1)MOVB,BIR,BIW传送字节指令,(1)MOVB周期性传送字节指令:当使能输入端EN有效时,将输入字节(IN)数据传送到输出字节(OUT)中。影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。在语句表中,周期性字节传送指令MOVB的指令格式为:MOVBIN,OUT。(2)BIR立即读传送字节指令:当使能输入端EN有效时,BIR指令立即将输入字节(IN)数据传送到输出字节(OUT)中。指令名称为:MOV_BIR。影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。在语句表中,立即传送字节指令BIR的指格式为:BIRIN,OUT。(3)BIW立即写传送字节指令:当使能输入端EN有效时,BIW指令立即将由(IN)数据指定输入字节传送到由输出字节(OUT)指定的字节中。指令名称为:MOV_BIW。在语句表中,立即写传送字节指令BIW的指令格式为:BIWIN,OUT。影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。,2)传送字指令MOVW传送字指令MOVW是有符号的,将输入字(IN)整数数据传送到输出字节(OUT)中,在传送过程中不改变字的大小。3)传送双字指令MOVDW4)传送实数指令MOVR影响允许输出ENO正常工作的出错为:SM4.3(运行时间),0006(间接寻址)。,5)传送块指令BMB,BMW,BMD,传送块指令用来进行一次传送多个数据,将最多可达225个的数据组成1个数据块。(1)传送字节块指令BMB:当使能输入端EN有效时,将从输入字节(IN)开始的N个字节值传送到从输出字节(OUT)开始的N个字节。(2)传送字块指令BMW:当使能输入端EN有效时,将从输入字(IN)开始的N个字值传送到从输出字(OUT)开始的N个字。(3)传送双字块指令BMDW:当使能输入端EN有效时,将从输入双字(IN)开始的N个双字节值传送到从输出地址(OUT)开始的N个双字。块传送指令的指令格式如下。字节块传送指令:BMBIN,OUT,N。字块传送指令:BMWIN,OUT,N。双字块传送指令:BMDWIN,OUT,N。,4.3.7移位和循环指令,移位指令在PLC控制中是比较常用的,根据移位的数据长度可分为字节型移位、字型移位和双字型移位;根据移位的方向可分为左移和右移,还可进行循环移位。1)左移和右移指令左移和右移指令的功能是将输入数据IN左移或右移N位后,把结果送到OUT。左移和右移指令的特点如下:1被移位的数据是无符号的。2在移位时,存放被移位数据的编程元件的移出端与特殊继电器SM1.1连接,移出位进人SM1.1(滥出),另一端自动补0。3移位次数N与移位数据的长度有关,如所需移位次数N小于实际的数据长度,则执行N次移位。如所需移位次数N大于数据长度,则执行移位的次数等于实际数据长度的位数。4移位次数N为字节型号数据。左移和右移指令影响的特殊继电器:SM1.0(零),当移位操作结果为0时,SM1.0自动置位;SM1.1(溢出)的状态由每次移出位的状态决定。影响允许输出ENO正常工作的出错条件为:SM4.3(运行时问),0006(问接寻址)。,(1)字节左移指令SLB(ShiftLeftByte)和字节右移指令SRB(ShiftRightByte)。,当使能输入端EN有效时,将输入字节(IN)左移或右移N位后,再把结果输送到OUT字节。N最大实际可移8位。在语句表中,字节左移指令SLB,或字节右移指令SRB的指令格式如下:字节左移指令:SLBOUT,N(OUT与IN为同一个存储单元)字节右移指令:SRBOUT,N(OUT与IN为同一个存储单元)例:SLBMB0,2SRBLB0,3以第一条指令为例,指令执行情况见表4-30所示。,表4-30指令SLB执行结果,(2)字左移指令SLW(ShiftLeftWord)和字右移指令SRW(ShiftRightWord)。,当使能输入端EN有效时,将输入字(IN)左移或右移N位后,再把结果输送到字(OUT)。N最大为16,在语句表中,字左移指令SLW或字右移指令SRW的指令格式如下:字左移指令:SLWOUT,N(OUT与IN为同一个存储单元)字右移指令:SRWOUT,N(OUT与IN为同一个存储单元)例:SLWMW0,2SRWLW0,3以第二条指令为例,指令执行情况见表4-31所示。表4-31指令SRW执行结果,(3)双字左移指令SLDW,双字右移指令SRDW,在梯形图中,双字左移指令SLDW或双字右移指令SRDW以功能框的形式编程,指令的名称分别为:SHL_DW和SHR_DW。当使能输入端EN有效时,将输入端(IN)的双字型数据左移或右移N位后,再将结果输出到OUT所指的双字存储单元。N最大实际可移位次数为32。在语句表中,双字左移SLDW或双字右移指令SRDW的指令格式如下:双字左移指令:SLDWOUT,N(OUT与IN为同一个存储单元)双字右移指令:SRDWOUT,N(OUT与IN为同一个存储单元)例:SLDMD0,2SRDLD0,3,2)循环左移和循环右移指令,循环移位的特点:被移位的数据是无符号的。在移位时,存放被移位数据的编程元件移出端既与另一端连接,又与特殊继电器SM1.1连接,移出位在被移到另一端的同时,也进人SM1.1(溢出),另一端自动补0。移位次数N与移位数据的长度有关,如N小于实际的数据长度,则执行N次移位。如N位大于数据长度,则有执行移位的次数为N除以实际数据长度的余数。移位次数N为字节型数据。循环移位指令影响的特殊继电器:SM1.0(零),当移位操作结果为0时,SM1.0自动置位:SM1.1(溢出)的状态由每次移出位的状态决定。影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间),0006(间接寻址)。,字节循环左移指令RLB和字节循环右移指令RRB,。在梯形图中,字节循环移位指令以功能框的形式编程,指令名称分别为:ROL_B和ROR_B。当使能输入端EN有效时,将输入端(IN)的字节型数据循环移位N位后,送到由OUT指定的字节。在语句表中,字节循环移位指令的指令格式如下:字节循环左移指令:RLBOUT,N字节循环右移指令:RRBOUT,N,字循环左移指令RLW和字循环右移指令RRW。,在梯形图中,字循环移位指令以功能框的形式编程,指令名称分别为:ROL_W和ROR_W。当使能输入端EN有效时,将输入端(IN)的节型数据循环移位N位后,送到由OUT指定的字。在语句表中,字循环移位指令的指令格式如下:字循环左移指令:RLWOUT,N字循环右移指令:RRWOUT,N例:SLWMW0,2SRWLW0,3,双字循环左移位指令RLD和双字循环右移位指令RRD,在梯形图中,双字循环移位指令名称分别为:ROL_DW和ROR_DW。当使能输入端EN有效时,将输入双字(IN)循环左移或右移N位后,再把结果输送到字(OUT)。在语句表中,字循环移位指令的指令格式如下:双字循环左移指令:RLDOUT,N双字循环右移指令:RRMOUT,N,3)移位寄存器指令SHRB,在梯形图中移位寄存器指令以功能框的形式编程,指令名称为SHRB。它在梯形图中有3个数据输入端:DATA为数值输入,将该位的值移入移位寄存器,而该移位寄存器是由S_BIT和N决定的。其中,S_BIT指定移位寄存器的最低端;N指定移位寄存器的长度。每次使能输入有效时,整个移位寄存器移动1位。如果N0,则在每个EN的前沿,将数据输入DATA的状态移入移位寄存器的最低位S_BIT;如果NO时,为正向移位,即从最低位向最高位移位。N0时,为反向移位,即从最高位向最低位移位。,移位寄存器的数据类型无字节型、字型、双字型之分,可指定的最大长度为64位,可正也可负。,4)先进先出指令(FirstInputFirstOutput),当使能输入有效时,从TBL指明的表中移出第一个字型数据并将其输出到DATA所指定的字单元。FIFO表取数特点:取数时,移出的数据总是最先进入表中的数据。每次从表中移出一个数据,剩余数据依次上移一个字单元位置,同时实际填表数EC会自动减1。指令格式:FIFOTBL,DATA例:FIFOVW100,AC0,5)后进先出指令LIFO,在梯形图中,LEFO以功能框的形式编程,指令名称为LIFO。当使能输入端EN有效时,从TAB指定的表中,取出最后进入表中的数据,送到DATA指定的单元,剩余数据位置不变,实际填表数EC会自动减1。LIFO指令影响的特殊继电器为SM1.5(表空)。不要从一个空表中取数据,否则SM1.5为ON。,4.3.8转换指令,转换指令是将累加器中的数据进行类型转换,转换的结果仍在累加器中。能够实现的转换操作有:数据类型的转换,数据类型到ASC码字符串的转换,进行编程和译码操作,还可产生七段码的输出。,1)BCD码与整数转换指令BCDI/IBCD,(1)BCD码到整数转换指令BCDI。在梯形图中,BCDI指令以功能框形式编程。指令的名称为:BCD_I。当使能输入端EN有效时,将输入端(IN)的BCD码转换成整数型输入数据,结果送入OUT。当输入数据(IN)超过(09999)时SM1.6置位。在语句表中,BCDI指令的指令格式为:BCDIOUT。例:BCDIAC0BCDI指令影响的特殊继电器:SM1.6(BCD错误)。影响使能输出ENO正常工作的出错条件为:SM1.6(BCD错误),SM4.3(运行时间),0006(间接寻址)。,(2)整数到BCD码转换指令IBCD,当使能输入端EN有效时,将输入端(IN)整数型数据,转换成BCD码数据型,并将结果输出送入OUT。当输入数据(IN)超过(09999),SM1.6置位。IBCD指令的指令格式为:IBCDOUT。例:IBCDAC0IBCD指令影响的特殊继电器:SM1.6(BCD错误)。影响使能输出ENO正常工作的出错条件为:SM1.6(BCD错误)SM4.3(运行时间),0006(间接寻址)。,2)双整数与实数转换指令DTR/ROUND/TRUNC,(1)双整数转为实数转换指令DTR当使能输入端EN有效时,将32位有符号输入端(IN)的双整数型数据,转换成32位实数型数据,结果送到OUT。指令格式为:DTRIN,OUT。(2)实数转为双整数转换指令(取整)ROUND当使能输入端EN有效时,将输入端(IN)的实数型数据,转换成双整数型数据(对IN中的小数部分进行四舍五人处理),转换结果送到OUT。指令格式为:ROUNDIN,OUT。例:DTRAC0,VD100(3)实数到双整数转换指令(取整)TRUNC当使能输入端EN有效时,将32位实数型数据(IN),转换成32位有符号整数型数据,只有实数的整数部分被转换(舍去IN中部分小数),结果送到OUT。指令格式为:ROUNCIN,OUT。,3)整数与双整数转换指令ITD/DTI,(1)整数到双整数转换指令ITD。当使能输入端EN有效时,将输入端(IN)的整数型数据,转换成双整数型数据(符号进行扩展),结果送到OUT。指令格式为:ITDIN,OUT。例:ITDVW0,AC0(2)双整数到整数转换指令DTI当使能输入端EN有效时,将输入端(IN)的双整数型数据,转换成整数型数据送到OUT。当输入端(IN)的数据超过整数型数据表示范围时,产生溢出。指令格式为:DTIIN,OUT。例:DTIAC0,VW20,4)字节与整数的转换指令BTI/ITB,(1)字节到整数的转换指令BTI当使能输入端EN有效时,字节型是无符号的,所以没有符号扩展。指令格式为:BTIIN,OUT。例:BTIVB0,AC0(2)整数到字节的转换指令ITB当使能输入端EN有效时,将输入端(IN)的整数型数据,转换成字节型数据,结果送到OUT。当输入端(IN)数据超过字节型数据表示范围(0255)时,则产生溢出。指令格式为:ITBIN,OUT。例:ITBAC0,VB10,4.3.9编码和译码指令,1)编码指令ENCO(Encode)编码指令的功能是对字型输入数据的最低有效位的位号进行编码后,送到输出字节的低位。在梯形图中,当使能输入端EN有效时,将输入端(IN)的字型数据的最低位有效位(值为1的位)的位号(0015)进行编码,编码结果送到由OUT所指定字节单元的低4位。即用半个字节来对一个字型数据16位中的1位有效位进行编码。编码指令格式为:ENCOINOUT。例:ENCOAC0,VB0,2)译码指令DECO(Decode),译码指令的功能是将字节型输入数据的低4位内容译成位号,并将输出字的该位置1,其余位置0。在梯形图中,当使能输入端EN有效时,将输入端(IN)的字节型数据低4位(半个字)的内容译成位号(0015),且将表示的位号置输出字(OUT)的相应位为1,其余的位置0。即对半个字节的编码进行译码来选择一个字型数据16位中的1位。指令的名称为:DECOIN,OUT。例:DECOVB0,AC0,3)七段显示码指令SEG,在梯形图中,当使能输入端EN有效时,将输入端(IN)的字节型数据的低4位对应的七段显示码(0F),输出到OUT指定的字节单元。如果该字节单元是输出继电器字节QB,则可直接驱动数码管。指令格式为:SEGIN,OUT。,4)字符串转换指令,字符串转换指令是将用标准字符编码(即ASC码)表示的09,AF的字符串,与十六进制、整数、双整数及实数之间进行转换。(1)ASC码到十六进制数指令ATH(ASCToHex)在梯形图中,有2个数据输入端及2个输出端。IN:开始字符的字节首地址。LEN:字符串长度,字节型,最大长度225。OUT:输出字节的首地址。当使能输入端EN有效时,把从输入数据IN开始的长度LEN的ASC码,转换为十六进制数,并将结果送到首地址OUT的字节存储单元。如果输入数据中有非法的ASC字符,将终止转换操作,特殊继电器SM1.7置1,在语句表中,ATH的指令格式为:ATHIN,LEN,OUT。例:ATHVB100,VB200,3,图4-32字符串转换,(2)十六进制数到ASC码指令HTA,IN:十六进制数开始位的字节首地址。LEN:转换位数,字节型,址大长度255。OUT:输出字节的首地址。当使能输入EN有效时,把从输入数据IN开始的长度为LEN位的十六制数,转换成ASC码,并将结果送到首地址为OUT的字节存储单元。如果输入数据中有非法的ASC字符,则终止转换操作,特殊继电器SM1.7置1。指令格式为:HTAIN,LEN,OUT,(3)整数到ASC码指令ITA,IN:整数数据输入。FMT:转换精度或转换格式(小数位的表示方式)。OUT:连续8个输出字节的首地址。当使能输入端EN有效时,把整数输入数据IN,根据FMT指定的转换精度转换成始终是8个字符的ASC码,并将结果送到首地址为OUT的8个连续字节存储单元。FAIT的字义如下:,在FMT中,高4位必须是O,C为小数点的表示方式:C=0时,用小数点来分割整数和小数;C=1时,用逗号来分割整数和小数。nnn表示在首地址为OUT的8个连续字节中小数的位数,nnn=000101,分别对应05个小数位,小数部分的对位方式为右对齐。,MSBLSB,4.5编程实例,1)简单的逻辑控制某产品需要用电机进行工作,电机是采用单向运行,其控制要求在按下启动按钮时,电动机运行,按下停止按钮时,电动机停止运行。,2)顺序与定时控制,三台皮带运输机,分别由电机M1、M2、M3驱动。要求:按启动按钮SB1后,启动时顺序为M1、M2、M3,间隔时间为5s。按停止按钮SB2后,停车时的顺序为M3、M2、M1,间隔时间为3s。3三台电动机M1、M2、M3分别通过接触器KM1、KM2、KM3接通三相交流电源,用PLC控制接触器的线圈,图4-56顺序控制的梯形图,3)顺序控制(步进控制),图4-60参考梯形图程序,2.2可编程序控制器的工作原理,2.2.1可编程序控制器的工作方式工作状态:STOP:创建和编辑用户程序,设置PLC的硬件功能,并可下栽到PLC。RUN:执行用户程序实现控制功能。扫描工作方式。(图2-9),2.2.2可编程序控制器的工作原理,1.读取输入2.执行用户程序3.通信处理4.自诊断测试5.修改输出6.中断程序的处理7.立即IO处理,2.2.3输人输出滞后时间是指可编程序控制器的外部输入信号发生变化的时刻至它控制的有关外部输出信号发生变化的时刻之间的时间间隔,几十毫秒。,2.3S7-200系列可编程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幕墙防裂、防渗漏及防水质量保障措施
- 中国观光车市场发展现状与未来趋势研究报告(2025-2026)
- 物料输送及烟气净化工数字化技能考核试卷及答案
- 民宿礼仪培训课件
- 玻璃钢制品检验员岗位操作规程考核试卷及答案
- 废旧电池及电池系统处置员招聘考核试卷及答案
- 拖拉机驾驶员设备维护与保养考核试卷及答案
- 磁头装配工基础知识考核试卷及答案
- 肠衣加工工特殊工艺考核试卷及答案
- 搪瓷窑炉司炉工作业指导书
- 2025年教科版新教材科学三年级上册全册教案设计(含教学计划)
- 从+“心”+出发遇见更好的自己-开学第一课暨心理健康教育主题班会-2025-2026学年高中主题班会
- 2025年苏教版新教材数学二年级上册教学计划(含进度表)
- 大众文化概论-课件
- 安全风险辨识与分级管控制度
- 【无线射频电路】-微波笔记·糖葫芦低通滤波器的设计
- 机械加工切削参数表
- 供应商现场考核记录
- 视频拍摄入门(上)课件
- 基础培训s8课件
- 美林时钟的自我救赎
评论
0/150
提交评论