您现在的位置是:首页 > PLC技术 > PLC技术

S7-200 PLC接收指令

来源:艾特贸易2017-06-05

简介接收指令的梯形图和语句表如图 5-13 所示。 TBL 为数据缓冲区,寻址范围为: VB 、 IB 、 QB 、 MB 、 SMB 、 SB 、 *VD 、 *AC 和 * LD 。 PORT 为通信端口,取值范围是常数 0 或 1 。 接收指令启

    接收指令的梯形图和语句表如图5-13所示。TBL为数据缓冲区,寻址范围为:VBIBQBMBSMBSB*VD*AC* LDPORT为通信端口,取值范围是常数01    接收指令启动或中止接收信息功能,通过指定的通信端口将接收的信息存储在数据缓冲区中。数据缓冲区中的第一个字节用来累计接收到的字节数,它本身不是接收到的,起始字符和结束字符是可选项。    接收指令可以方便地接收1255个字符。如果有中断程序连接到接收结束事件上,在接收完最后一个字符时,端口0会产生中断事件23,端口1会产生中断事件24。通过监视发送完成状态位SMB86(端口0)或SMB186(端口1)的变化,可以不使用中断来接收信息,如向打印机发送信息。当接收指令未被激活或者已经被中止时,SMB86SMB18 6不为0,当接收正在进行时,SMB86SMB1860    接收指令允许选择接收信息开始和结束的条件。使用SMB86SMB94对端口0进行设置,SMB186SMB194对端口1进行设置,如表5-7所示。
接收指令
    5-13    接收指令    5-7    SMB86SMB94SMB186SMB194特殊标志位配置应用
SMB86~SMB94和SMB186~SMB194特殊标志位配置应用
SMB86~SMB94和SMB186~SMB194特殊标志位配置应用
    5-7中的i1=1表示检测空闲状态,sc=1表示检测信息的起始字节,bk=1表示检测break条件,SMW90SMW190中是以ms为单位的空闲线时间。在执行接收指令时,有以下几种判断信息起始条件的方法:    1)空闲线检测,i1=1sc=0bk=0SMW90SMW190>0。在该方式下,从执行接收指令开始,在传输线空闲的时间大于或等于SMW90SMW190中设置的时间之后接收的第一个字符作为新信息的起始字符。    2)起始字符检测,i1=0sc=1bk=0,忽略SMW90SMW190。以SMB88SMB188中的起始字符作为接收到的信息开始的标志。    3) break检测,i1=0sc=0bk=1,忽略SMW90SMW190。以接收到的break作为接收信息的开始。    4)对通信请求的响应,i1=1sc=0bk=0SMW90SMW190=0(设置的空闲线时间为0)执行接收指令后就可以接收信息。若使用报文超时定时器( cm=1),从接收指令开始后开始计时,定时到时强制性地终止接收。若在定时期间没有接收到信息或只接收到部分信息,则接收超时,一般用它来终止没有响应的接收过程。    5) break和一个起始字符,i1=0sc =1bk=1,忽略SMW90SMW190。以接收到的break之后的第一个起始字符作为接收信息的开始。    6)空闲线和一个起始字符,i1=1sc=1bk=0SMW90SMW190>0。以空闲线时间结束后接收的第一个起始字符作为接收信息的开始。    7)空闲线和起始字符(非法),i1=1sc=1bk=0SMW90SMW190 =0。除了以起始字节作为信息开始的判据外(sc=l),其他的特点与4)相同。    SM87. 3/SM187. 3=0时,SMW92/SMW192为字符间超时定时器;SM87. 3/SM187.3=1时,SMW92/SMW192为报文超时定时器。字符间超时定时器用于设置接收的字符间的最大时间间隔。只要字符间隔时间小于该设定时间,就能接收到所有信息,而与整个报文接收时间无关。报文超时定时器用于设置最大接收信息时间,除4)和7)中所述特殊情况外,其他情况下在接收到第一个字节后开始定时,若报文接收时间大于该设定时间,将强制终止接收,不能接收到全部信息。    上述两种定时器的定时时间到时均强制结束接收,SMB86SMB186的第二位为1,表示接收超时。    接收结束条件可以用逻辑表达式表示为:结束条件=ec+tmr+最大字符数,即在接收到结束字节、超时或接收字符超过最大字符数时,都会终止接收。另外,在出奇偶检验错误(如果允许)或其他错误的情况下,也会强制结束接收。    可以用字符中断控制接收数据,若预先为接收字符事件指定相关联的中断程序,则每接收到一个字符都会产生一次中断,接收到的字符存在SMB2中,被激活的奇偶校验状态存在SM3.0中。SMB2是自由口接收字符缓冲器,在自由口模式下接收的每个字符都存在SMB2中,以便用户程序访问。SMB3是自由口奇偶校验错误,在自由口模式下,若接收到的字符奇偶校验出错,则SM3.01,其余各位保留。注意:端口0和端口1共用SMB2SMB3,但两个端口的字符接收中断号不同。