首页 理论教育现场总线与工业以太网:预定义主/从连接工作流程

现场总线与工业以太网:预定义主/从连接工作流程

【摘要】:如果服务器对Allocate_Master/Slave_Connection_Set报文产生错误响应,则认为服务器不支持预定义主/从连接组,或者该服务器已经充当其他组2客户机的组2服务器。可见,在预定义主/从连接中使用的报文包括:仅限组2未连接显式请求报文、响应报文、显式请求和I/O报文。表7-9 预定义主/从连接的连接实例ID从站必须预留预定义主/从连接所支持的实例ID。

1.主/从关系的确定

系统运行中,欲成为组2客户机的设备首先要对服务器分配所需要的预定义主/从连接。分配预定义主/从连接的步骤如下:

1)客户机通过向服务器设备的UCMM端口发送打开显示报文连接请求,通过步骤2)确定服务器是否为仅限组2服务器。

2)客户机自动启动等待响应定时器,该定时器的最小溢出值为1s。

如果服务器成功响应(从它的UCMM端口),则设备具有UCMM功能,转到步骤3)。

如果服务器没有响应(发生了等待响应超时),则重试向服务器设备的UCMM发送打开显式信息连接请求并再次启动等待响应定时器。如果收到响应,那么设备支持UCMM功能,转到步骤3);如果仍没收到响应(2次等待响应超时),则假定设备为仅限组2设备(无UCMM功能),转到步骤5)。

3)服务器具有UCMM功能,客户机通过发送Allocate_Master/Slave_Connection_Set报文,建立显式报文连接。通过建立的显式报文连接,可以分配预定义主/从连接。上述过程成功完成后,服务器(具有UCMM功能)成为组2服务器,客户机成为它的主站(组2客户机)。客户机可任意使用UCMM产生的显式报文连接或组2中的预定义主/从连接组显式报文连接(如果已经分配)。客户机在两种显式信息连接都能使用的情况下,优先使用预定义主/从连接中分配的显式报文连接。在这种情况下,服务器在设计时就应考虑具有处理这两种连接的能力。

如果服务器对Allocate_Master/Slave_Connection_Set报文产生错误响应,则认为服务器不支持预定义主/从连接组,或者该服务器已经充当其他组2客户机的组2服务器。错误响应信息中的错误代码可以用于判定是哪种情况发生。

4)如果服务器对Allocate_Master/Slave_Connection_Set报文成功响应,则意味着服务器按照Allocate_Master/Slave_Connection_Set服务的要求配置了预定义主/从连接组的实例,确认了自己的主站,并阻止其他客户机再使用预定义主/从连接组成为其主站,转到步骤6)。

5)客户机将向服务器的仅限组2未连接显式请求报文端口发送Allocate_Master/Slave_Connection_Set报文,分配预定义主/从连接组。

如果预定义主/从连接组还没被分配,服务器发送响应成功报文,表明它已将连接组分配给该客户机,转到步骤6)。

如果向服务器的仅限组2未连接显式请求报文端口发送Allocate_Master/Slave_Connection_Set报文后客户机超时,那么客户机会再次发送同一分配报文。如果再次出现超时,则客户机认为服务器设备不在当前链路上,分配失败。

6)分配过程结束。在任意给定的时间里每个从站(服务器)仅能接受一个主站(客户机)的分配预定义主/从连接。仅限组2客户机在对仅限组2服务器执行其他任何事务前,必须确信对相应仅限组2服务器的分配已成功完成。

2.预定义主/从连接的使用过程

如果显式连接已经建立,可以通过显式连接进行I/O连接的分配以及各种属性参数的配置,如Expected_Packet_Rate属性值的设置和其他属性值的获取等。实际上,I/O连接的建立有两种途径:一是主站通过仅限组2未连接报文建立I/O连接;二是主站通过显式报文连接建立I/O连接。建立起的I/O连接是未激活的,必须通过显式连接设置I/O连接的Expec-ted_Packet_Rate属性值来激活。激活I/O连接后才能进行I/O数据的交换。释放显式连接或I/O连接可以通过仅限组2未连接显式报文或显式报文进行。

可见,在预定义主/从连接中使用的报文包括:仅限组2未连接显式请求报文、响应报文、显式请求和I/O报文。

通信功能最终都是通过连接实例完成,每一个实际存在的连接对象实例都被赋予ID,以此作为连接实例的标识。在预定义主/从连接中,从站建立的连接实例ID是已经定义好的,包括显式信息连接、位-选通连接、轮询连接、状态变化/循环连接、多点轮询连接。连接实例ID见表7-9。

表7-9 预定义主/从连接的连接实例ID

978-7-111-35607-3-Chapter07-27.jpg(www.chuimin.cn)

从站必须预留预定义主/从连接所支持的实例ID。例如,如果某设备支持轮询I/O连接,该设备必须使用连接实例ID#2来标识轮询连接实例;如果某设备不支持轮询连接,该设备可自由分配连接实例ID#2来标识其他连接实例。

3.从站中连接实例的建立

显示实例可通过组2未连接显示请求报文建立;I/O实例可通过未连接显式报文或显式报文建立,但只能通过显式报文激活。连接实例的建立都是通过分配主/从连接组(4Bhex)和释放主/从连接组(4Chex)两个服务进行的。类3(DeviceNet对象)实例1的分配选择字节(Allocation Choice Byte)是该服务的对象。DeviceNet对象中的分配选择字节的内容见表7-10。

表7-10 分配选择字节的内容

978-7-111-35607-3-Chapter07-28.jpg

表中,第7位为保留位;第6位表示是否需要应答,与第5位或第4位配合使用;第5位和第4位只能设置其中的一种,对应连接实例ID#4;第3位对应连接实例ID#5;第2位对应连接实例ID#3;第1位对应连接实例ID#2;第0位对应连接实例ID#1。上述各位置1表示有效。

(1)主从连接组的分配和释放

不管连接ID对应的是仅限组2未连接显式请求报文,还是显式请求报文,执行分配主/从连接组时信息的数据域都采用表7-11的格式。

表7-11 分配主/从连接组数据域格式

978-7-111-35607-3-Chapter07-29.jpg

表7-11中分配选择字节的内容见表7-10。如果该字节为01hex,则从站建立实例1——显示信息连接实例;如果该字节为02hex,则从站建立实例2——轮询I/O连接实例。一般情况下,首先建立显式报文连接实例,然后建立I/O连接实例,例如,在建立了显式报文连接后,通过显式报文进行分配主/从连接组服务,假设分配选择字节设置为06hex,则从站同时建立了实例2和实例3。从站返回的成功响应分配主/从连接组的数据域格式见表7-12。

表7-12 从站返回的成功响应分配主/从连接组数据域格式

978-7-111-35607-3-Chapter07-30.jpg

如果主站要释放某个连接实例,则采用释放主/从连接组信息,其数据域格式与表7-11基本一致,只是服务代码为4Chex。所要释放的连接实例也是由分配选择字节的值来决定的。从站返回的成功响应释放主/从连接组的数据域格式见表7-13。

表7-13 从站返回的成功响应释放主/从连接组数据域格式及内容

978-7-111-35607-3-Chapter07-31.jpg

(2)从站连接实例的属性

建立一个实例的同时,实例的属性也进行了初始化,每个实例都可以通过显式报文来改变一些属性的值。