DeviceNet支持两种类型的连接:显式信息连接和I/O连接。
显式信息连接是点对点的连接方式,报文接收方必须对接到的报文做出相应的响应,通常这类报文对时间要求不高,主要用于上传/下载程序、修改设备参数、趋势分析和诊断等。
I/O连接则用于传送实时性要求较高的I/O报文,可以一对一、一对多的数据传送。DeviceNet支持多种I/O数据触发方式,如位选通(Bit strobe)、轮询(Poll)、状态改变(COS:Change Of State)/循环(Cyclic)等。
位选通:利用8字节的广播报文,每一位分别对应着网络上64个节点,指定要求响应的从节点,响应报文最大为8个字节。
轮询:这种触发方式适用于绝大多数设备,相比位选通的少量I/O数据,轮询命令可传送任意数量的数据。轮询命令依次发送到各从站设备,从站接收到命令后做出应答。
状态改变:此方式多用于离散的设备,当设备状态发生改变时,使用事件触发方式,发生通信,而不是依靠主设备不断查询。为了防止设备掉线,增加了心跳报文,定时获取设备运行状态。
循环:适用于一些模拟设备,可以根据设备信号发生快慢,灵活的设定循环通信的时间间隔,可以降低不必要的网络流量,循环时间设定值应小于模拟量输入发生变化的时间值。每台设备中,循环和状态改变是互斥的,同一时刻只能使用一种连接方式。
下面通过图1介绍DeviceNet网络中两台设备建立通信的一般流程。
图1 DeviceNet通信基本流程