电动机功率 | 3kW | 外形尺寸 | 4mm |
---|---|---|---|
应用领域 | 环保,食品/农产品,地矿,包装/造纸/印刷,纺织/印染 | 重量 | 2kg |
西门子S7-1200PLC系统有五种不同模块,分别为 CPU 1211C、CPU 1212C 、 CPU 1214C、CPU1215C和CPU1217C。其中的每一种模块都可以进行扩展,以*您的系统需要。可在任何 CPU 的前方加入一个信号板,轻松扩展数字或模拟量 I/O,同时不影响控制器的实际大小。
![]() |
参考价 | ¥366 |
订货量 | 1 |
更新时间:2019-07-25 14:49:17浏览次数:248
联系我们时请说明是化工仪器网上看到的信息,谢谢!
辽宁西门子S7-1200PLC模块代理经销商
PLC标准触点指令实现
在IEC61131-3的指令表语言(instruction list)中,分别用LD(Load,装载)、AND(and,与)和OR(or,或)指令来表示开始、串联和并联的常开触点(见表1-2);分别用LDN (load Not)、ANDN (and not)和ORN (or not)来表示开始、串联和并联的常闭触点(见表1-3,助记符中括号里面的是相应S7-200的指令)。触点指令中所有操作数变量X的数据类型为BIT型。触点指令的操作数主要包括输入点I、输出点O,中间继电器(位存储器)M、定时器(T)的线圈状态以及计数器(C)的线圈状态等。
标准触点指令实现简单的逻辑关系式的运算。S7-200为实现逻辑指令,在PLC运行系统中采用了一个9位的工作堆栈STACK,利用C51实现时,使用一个位变量来作栈顶,在位寻址空间定义一个char类型(8位)的变量作为实际意义上的堆栈。栈顶用来存储逻辑运算的结果,下面的8位用来存储中间运算结果,堆栈中的数据一般按“*后出”的原则存取。
执行LD指令时,将指令的位地址(或变量)中的二进制数据装载入栈顶。
执行AND (A)指令时,将指令的位地址中的二进制数和栈顶中的二进制数相与,结果存入栈顶。
执行OR (O)指令时,将指令的位地址中的二进制数和栈顶中的二进制数相或,结果存入栈顶。
执行常闭触点对应的LDN、ANDN (AN)和ORN (ON)指令时,取出指令的位地址中的二进制数据后,将它取反(0变为1,1变为0),然后再做对应的装载、与、或操作。
需要特别注意的是,由于提供的工作堆栈有9级,LD和(或)LDN指令在同一网络(一个梯形图网络)连续出现超过8次时再执行LD或LDN指令,将丢失数据,而且这样做上位机进行编译时也会报错(不允许用户这样使用),下一节将介绍其他与堆栈有关的指令的实现。
下面介绍PLC梯形图及指令功能实现。之所以说梯形图语言是面向用户的,是因为它是由继电器控制图发展而来的。它们在画法上有许多的相似之处,梯形图采用软件编程逻辑取代了继电器硬件接线逻辑,因而它和继电器控制器有本质的区别,一个是接线,另一个是PLC的程序。图1-66示出的是一个西门子PLC系列简单的梯形图程序,-| |-和-|/|-分别表示常开和常闭触点,[ ]表示线圈,梯形图代表的是一段程序,而非硬件接线逻辑(图1-66中数字表示执行顺序,并非程序的一部分)。
在PLC梯形图中,继电器对应的物理实体是内存单元的某一位,称为位功能存储器。若该位为1,那么表示它所代表的继电器线圈通电,常开触点闭合,常闭触点断开;反之,若为0,则相应的继电器线圈失电,常开触点断开,常闭触点闭合。CPU扫描用户程序的过程实质是进行逻辑关系的运算,接点(或触点)状态0或1作为逻辑关系式左端各项的值进行与、或、非的运算。运算结果1或0送入代表继电器线圈的某一位存储单元,从而导致了该继电器线圈的通电或失电。研究PLC梯形图语言或指令语句的位逻辑指令,就是研究PLC指令所代表的逻辑关系以及实现该逻辑关系的方法。
定时器TIM和TIMH (15)是递减、ON延时定时器指令,这些指令需要一个TC编号和一个设定值(SV)。STIM (69)用来控制时间间隔,触发中断程序。
CNT是递减计数器指令,CNTR (12)是一个可逆的计数器指令,它们都需要一个TC编号和一个设定值(SV),两者也都和一个用作输入信号和一个用作复位的多重指令行相连接。CTBL (63)、INT (89)和PRV (62)用于处理高速计数器,INT (89)也可用于终止脉冲输出。
任何一个TC编号不能定义两次,一旦它在定时器或计数器指令中被定义,则不能再次使用。一旦定义了,TC编号在指令中作为操作数,可根据需要多次使用,但不能在计数器和定时器指令中重复定义。在欧姆龙CPM2A/CPM2C的PC机中,TC编号为000~255,而在CPM1/CPM1A/SRM1 (-V2)的PC机中,TC编号为000~127。当使用一个TC编号作为定时器或计数器定义时,不需要前缀,一旦定义为定时器,则TC编号可以是TIM前缀,用作某些指令的一个操作数。任何定时器指令都使用TIM前缀来定义。一旦定义为一个计数器,则TC编号可以是CNT前缀,用作某些指令的一个操作数。所有计数器指令都使用CNT前缀来定义。TC编号可以表示为所需要位或字数据的操作数。当表示为所需要位数据的操作数时,TC编号可以访问作为一个定时/计数“完成标志”的功能位,即该标志表示定时/计数已完成,也就是说,通常为“OFF”的位在的SV结束后将置“ON”。当表示为需要字数据的操作数时,TC编号可以访问能够存放定时器/计数器的当前值PV的一个内存位置。因此,定时器或计数器的PV可用作CMP (20)的操作数,或任何其他的TC区允许访问的指令,这是通过TC编号来实现的,这个TC编号用来定义访问存放定时器/计数器的当前值PV的一个内存位置。
注意:TIM 000是用来表示由TC编号000定义的定时器指令,定义这个定时器的完成标记及当前值PV。对术语的解释非常清楚,即*是一条指令,第二是一个位操作数,第三是一个字操作数。放在TIM或CNT后面的其他TC编号也是同样的含义。设定值SV可以作为数据区中的一个常数或者一个字地址输入。如果将一个IR区域的字分配到一个输入单元作为字地址的话,输入单元可以用线连接,这样SV可以通过外部的指轮拨盘或类似设备设定,通过这种方法连接的定时器和计数器仅能在运行和监视模式下,通过外部方式设定。所有的设定值SV,包括通过外部设定,都必须使用BCD码。
a.定时器(TIM)。图1-59中的SV为000. 0~999.9之间的数值。设置时不用输入十进制小数点。每一TC编号只能用作一条定时器或计时器指令的定义符。在CPM2A/CPM2C PC中TC编号为000~255,而在PM1/CPM1A/SRM1 (-V2)PC中TC编号为000~127。如果TIMH (15)中需要TC编号,那么TC000~TC003(在CPM2A/CPM2C中为TC000~TC015)不能在TIM中使用。在CPM2A/CPM2C PC中,如果TMHH (15)需要使用TC编号,那么TC004~TC007不应当用于TIM。当执行条件为“ON”时,定时器进入工作,而当执行条件为“OFF”时,定时器复位,即恢复到设定值SV。一旦定时器开始工作,TIM从SV起,以0.1s为单位计量。如果执行条件为“ON”的时间保持到TIM减计时到0,该TC编号的完成标志将置“ON”,且保持“ON”直到TIM复位(即直到执行条件为“OFF”)为止。下面的图1-60表示了TIM的执行条件及其完成标志之间的关系。
图1-59 定时器(TIM)指令梯形图符号与定义
图1-60 TIM的执行条件及其完成标志之间的关系
b.高速定时器[TIMH (15)]。如图1-61所示,设定值SV在00. 00~99. 99之间(虽然可以设定00. 00和00. 01,但设定00. 00使定时器失效,即立即使完成标志置“ON”,而设定00. 01使扫描不可靠)。设置时不用输入十进制小数点。每- TC编号只能用作一条定时器或计时器指令的定义符。TC编号在CPM2A/CPM2C中为000~255;而在CPM1/CPM1A/SRM1 (-V2)中TC编号为000~127。除了TIMH (15)的计量单位为0.01s以外,TIMH (15)与TIM的操作一样。当IL (02)的执行条件为“OFF”时,互锁程序部分中的定时器复位。一般情况下,电源中断会使定时器复位,使用SR区域时钟脉冲作为CNT的计数脉冲,可在电源中断时使定时器不复位。当JMP (04)的执行条件为“OFF”时,在跳转程序部分中的定时器将不会复位。如果跳转编号为00,定时器将停止定时,但是如果使用其他跳转编号,定时器将继续定时。在线编辑修改参数时,必须使定时器复位。同样,用中断刷新改变一个TIMH (15)指令时也必须使定时器复位。只有在程序模式时可以不复位。TIMH (15)使用的定时器编号为TC000~TC003。当周期时间超过10ms时,定时器编号为TC004~TC127(在CPM2A/CPM2C中是TC016~TC255)的高速定时器可能会不准确。
图1-62中定时器的设定值为常数。在CI00000变为“ON”后CI01600将置“ON”,且至少保持“ON”状态1.5s。当CI00000为“OFF”时,定时器也将复位,且CI01600为“OFF”。
图1-62 定时器的设定值为常数
c.计数器(CNT)。如图1-63所示,每一TC编号只能用作一条定时器或计时器指令的定义符。TC编号在CPM2A/CPM2C PC中为000~255,而在CPM1/CPM1A/SRM1PC PC中为000~127。当计数脉冲的执行条件CP从“OFF”变为“ON”时,计数器就作减值计数,即只要计数器CP脉冲执行条件为“ON”,上一扫描周期执行条件为“OFF”,计数器就作减一计数。如果CP端执行条件不变或由“ON”变到“OFF”,计数器当前值PV不变。当计数器当前值PV计到零时,计数器的完成标志置“ON”,并且将保持“ON”的状态直到计数器复位为止。计数器的复位是由一复位输入信号R来实现的,当R由“OFF”变为“ON”时,计数器复位,计数器当前值PV恢复为设定值SV。当复位R为“ON”期间,计数器当前值PV不减值。当复位R变为“OFF”时,计数器从设定值SV开始递减计数。电源中断或在互锁程序部分中的计数器当前值PV不会复位。执行条件、完成标志以及当前值PV的变化如图1-64所示。当前值PV线的高度只是说明当前值PV的变化情况。
注意,间接寻址DM字不存在(DM字的内容不是BCD码,或超出DM区域)。在如图1-65所示的例子中,计数器(CNT)是通过对SR区域时钟脉冲位计数来产生扩展的定时器。CNT001对1s的时钟脉冲位(SR25502)从“OFF”变为“ON”的次数进行计数。而且,IR00000用来控制CNT计数的时间。由于在这个例子中,CNT001的设定值SV是700,当1s×700次或者11min40s已经到时,CNT002的完成标志置“ON”,这将导致IR20002置 "ON"。
辽宁西门子S7-1200PLC模块代理经销商