Communication Model¶
DeviceNet™ uses the Producer Consumer Model. As soon as a DeviceNet™ subscriber has to transmit data as required by the configured connections, it produces data, i.e. it transmits data via the bus. All modules, which are waiting for data, monitor the bus. If a subscriber recognizes that it is the receiver of the data by reading the identifier contained in the telegram header, it consumes the data, i.e. it reads the complete telegram. Here, it is possible that a message can be directed to one single subscriber (single cast) or several subscribers (multi cast).
DeviceNet™ defines two types of messages: I/O messaging (I/O data transfer) and explicit messaging (direct connection). I/O messaging is used for exchanging time-critical data (e.g. process data). The data are exchanged via single or multi cast connections and typically use identifiers with a high priority. The meaning of the messages is set with the connection IDs (CAN identifier). Before DeviceNet™ modules can exchange messages that use these IDs, the modules have to be configured accordingly. The configuration data contain the source and destination address of the object attributes to be transferred for the sender and receiver of the messages. Explicit messaging is a low-priority point to point communication connection between two devices and is typically used for configuration and diagnostic purposes. DeviceNet™ telegrams (I/O messaging and explicit messaging) contain a maximum of 8 bytes user data. If greater data volumes are to be exchanged, the data have to be split into smaller data packages by fragmenting prior to transmitting. These fragments are then transmitted one after the other and recombined in the receiver.
In addition, DeviceNet™ knows so-called default master slave connections. These connections use special identifiers of the message group 2. In contrast to all other message types, these types use the MAC ID as destination address and not as source address. Default connections allow to simplify the communication relations. Here, the connection types Bit Strobe, Polling, Change of State and Cyclic are available.