Prof. James Gross
Dr. Mathias Bohge
In our previous post, we dug into wireless propagation effects like shadowing and fading, the challenge they pose to industrial wireless networks and how EchoRing delivers an effective solution. That said, another challenge remains, one that’s inherent to numerous devices being present within a single wireless network: collisions. In this post, we’ll explain what collisions are, how they affect wireless communications and finally present an effective countermeasure that preserves real-time wireless performance.
A worker (transmitter), an assembly robot (receiver) and a passing autonomous forklift (collider)
COLLISIONS – THE EFFECT OF SIMULTANEOUS TRANSMISSIONS
The easiest analogy to understand collisions is to imagine an interruption during a conversation. Whenever more than one person speaks at the same time, the listener often has trouble understanding what’s being said. In wireless communications the same principle applies; whenever two nodes in a network transmit at once, collisions (i.e. signals on the same frequency interrupting each other) often occur. In these cases, the receiving antenna experiences an entirely different signal than intended – a mashup of the two or more signals that were sent.
The Receiving node experiences a mixed signal from the Transmitting node and the Colliding node
By this point another important term in wireless communications may have come to mind: interference. The effect a receiving node experiences during a collision is identical in function to interference, therefore collisions can be defined as type of self-interference. However, interference is distinct enough that it will be covered on its own in a later post. This is because a) unlike collisions, interference is caused by nodes in other networks, or even by non-wireless technologies on the same frequency band, and b) different techniques employed to counter interference.
Coordination: Adding Determinism to Avoid Collisions
As discussed above, collisions result from multiple nodes sending transmission requests at the same time. The solution therefore is a coordinated transmission sequence, which requires a detailed and comprehensive network management scheme. The timers of each node need to be synchronized at regular intervals, and each node needs to be assigned an exclusive transmission timeslot. That said, if a node’s timeslot approaches while it has nothing to transmit, it’s quite challenging for the sequence to reallocate this timeslot to a node that does, to the point that in most cases the transmission opportunity is lost. The standard alternative to timeslots is to permit nodes to send data whenever they have a backlog, which frees up the network design from these stumbling blocks. The drawback to this method, as explained in the previous section, is that collisions often occur. Transmission sequences can be added to a network through a number of techniques:
1. TDMA (time division multiple access): synchronised timers and transmission schedules are sent at regular intervals to all nodes in a network.
2. Polling: a master station sends a “polling” command in sequence to each node in the network. The polling command contains both a data packet and permission for the receiving node to reply with any data they possess.
The downside to both of these methods is that they require a designated command node to manage the network, therefore the entire system becomes compromised if this single point of failure breaks down. Luckily, a third transmission sequence method exists which doesn’t require a single point of failure - token-passing. It’s also precisely the technique employed by EchoRing.
EchoRing: Network Determinism Through Token-Passing
In token-passing, a special control packet (the token) is passed along from node to node in a sequence. A node is only allowed to transmit a data payload for the length of time it holds the token. All other nodes “wait their turn” meanwhile and collisions are avoided.
To explain in more detail, the token-passing method features a timer in each node that activates whenever the token is received. The node is then required to pass on the token as soon as its set holding time is reached, ensuring a maximum set latency in the process. While this method is easily achievable in scheduled or polled systems as well, token-passing also has a built-in recovery system that adapts to rapidly changing network status and topology. Whenever a node connection fails, the entire network is alerted and the transmission sequence is automatically re-routed though an alternate node to the receiver (specifically via the [buddy system] covered in our previous post). The network is therefore able to avoid major failures and recover quickly enough to ensure real-time operations. Furthermore, this approach allows moving nodes to freely roam between networks, often in response to connectivity issues. The adaptations required for this network roaming (i.e. one network has more nodes when the other has fewer) follow the same re-routing process as described above.
EchoRing’s Token-Passing Technique
It’s through token-passing’s deterministic approach that EchoRing achieves two prerequisites for real-time wireless connectivity: avoiding collisions and guaranteeing a set latency. Regarding the latter, EchoRing enables latencies as low as 2ms, a performance well within the threshold for wireless industrial automation.