Computer Standards & Interfaces 42 (2015) 32–41
Contents lists available at ScienceDirect
Computer Standards & Interfaces journal homepage: www.elsevier.com/locate/csi
Extending CAN bus with ISA100.11a wireless network Fadillah Purnama Rezha, Oka Danil Saputra, Soo Young Shin ⁎ Wireless and Emerging Networking System (WENS) Lab., School of Electronic Engineering, Kumoh National Institute of Technology, Yangho-dong, Gumi, Gyeongbuk 730-701, Republic of Korea
a r t i c l e
i n f o
Article history: Received 13 November 2013 Received in revised form 18 March 2015 Accepted 16 April 2015 Available online 2 May 2015 Keywords: Hybrid network CAN bus ISA100.11a delay characteristic End-to-end delay
a b s t r a c t In this paper, we present a framework for building a hybrid network composed of Controller Area Network (CAN) bus and ISA100.11a industrial wireless network. The end-to-end delay of CAN-ISA100.11a hybrid network is evaluated. One scheme is proposed based on time slot configuration in ISA100.11a to ensure the prioritization hierarchy which is suitable for large packet size, namely priority assurance (PA). Moreover, a comparison between shared time slot and short time slot is evaluated to give insight on which one gives the best performance in CAN-ISA100.11a hybrid network. The delay of the proposed framework is further simulated under interference environment. © 2015 Elsevier B.V. All rights reserved.
1. Introduction The traditional wired control networks have been successfully implemented for industrial applications in decades. The ability of traditional wired control networks to provide high speed, high reliability, and bounded delay makes them a popular option to be implemented in industrial plants [1]. However, the wired control networks require infrastructure and space for installation. Adding the new machine to the existing plant using wired control networks often creates new problem of cable routing difficulties and sometimes requires system engineer to re-design the whole cable routing plan. Moreover, the installation and maintenance of cables and connectors are usually much more expensive than the cost of the sensors themselves [2]. Having a wireless network as an alternative in such environments would be exceptionally valuable. Hybrid network of wired and wireless technology has become the hot topic research as a result of increasing demands in applying wireless network for industrial application. Hybrid network introduces different delay characteristics, depending on what technology composes the hybrid network. Bayilmis et al. proposed an interworking design to enable CAN nodes to communicate over IEEE 802.11b Wireless Local-Area Network (WLAN) using encapsulation method [3]. Similarly, in [4] Ren et al. proposed a design to integrate the CAN bus with Bluetooth. Those related works pointed out the necessity to extend wired control networks with the wireless one to satisfy industrial needs. ⁎ Corresponding author. E-mail addresses:
[email protected] (F.P. Rezha),
[email protected] (O.D. Saputra),
[email protected] (S.Y. Shin).
http://dx.doi.org/10.1016/j.csi.2015.04.002 0920-5489/© 2015 Elsevier B.V. All rights reserved.
The work presented in this paper focuses on the integration of wired and wireless networks which can interconnect stationary and mobile devices. More specifically, this work deals with extending CAN bus using ISA100.11a to meet real-time control application requirements in both automotive and industrial control. CAN bus is a serial data communication protocol that provides high reliability and good real-time performance with very low cost. The CAN bus has gained popularity in the industry due to its wide usage in a wide range of applications [5]. For example, in industrial automation processes, robotic arms are connected to the controller (computer) using CAN bus [6]. On the other hand, ISA100.11a is an emerging open standard for process control dedicated for industrial automation and related applications [7]. This paper, to the best of our knowledge, is one of the first efforts in considering hybrid network of two popular communication protocols in the industry, CAN bus, and ISA100.11a. Given the critical nature and performance requirements of automation and control networks, both protocols' ability to support message priority and provide deterministic delay makes them suitable for most industrial environments. The main contribution of this paper is to develop a hybrid network using both wired and wireless networks for industrial environment, where distributed control unit (DCU) is considered. CAN is used to connect among DCUs while ISA100.11a is used to connect sensor and/ or actuator to DCUs. The remainder of this paper is organized as follows. The following section presents a brief overview of CAN bus and ISA100.11a network. Section 3 highlights the network architecture that is used to describe the hybrid network, the proposed framework for interconnecting CAN bus and ISA100.11a, and our proposed schemes to ensure prioritization
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
33
and reduce end-to-end delay in the hybrid network. Simulation model and presentation of results obtained from simulations are discussed in Sections 4 and 5, respectively. Finally, the conclusions are presented in Section 6. 2. Technical overview of CAN bus and ISA100.11a 2.1. CAN bus CAN is a serial bus communication protocol developed by Bosch in the early 1980s [8]. In particular, the CAN standard only defines three layers namely the object layer, the transfer layer, and the physical layer while in the application layer could be CANopen, DeviceNet, CAL (CAN Application Layer), etc. CAN is essentially a broadcast network, where a message transmitted will be received by all nodes that are attached to the bus. In general, a CAN-compliant node consists of three parts: the host processor, the CAN controller, and the transceiver. The host processor decides which messages it wants to transmit, sees all the messages on the bus, and interprets received messages. The CAN controller is basically a buffer for both incoming and outgoing messages. Finally, CAN transceiver is the PHY (physical) layer of CAN, which converts the transmit bit received from the CAN controller into a signal that is sent onto the bus, and vice versa. CAN bus uses CSMA/AMP (Carrier Sense Multiple Access with Collision Detection and Arbitration on Message Priority) mechanisms. In case of simultaneous transmission, arbitration is performed based on the priority level of the message identifier (ID), in which a logic zero is dominant over logic one, and enables the message whose ID has the highest priority to be delivered immediately. If two nodes start transmitting at the same time and one of them receives a dominant bit (0) when a recessive bit (1) has been transmitted, the node loses arbitration and stops transmitting as illustrated in Fig. 1. The CAN bus specification has 2 versions, 2.0A (original version) and 2.0B (extended version). The difference between CAN 2.0A and CAN 2.0B standard is located in the format of the message header. CAN 2.0A allocates an 11-bit identifier while CAN2.0B contains a 29-bit identifier. CAN bus is optimized for short messages, with size of data field is between 0 and 8 bytes. The achievable data rate of CAN bus depends on the length of the bus. The maximum data rate supported by CAN bus is 1 Mbps, with bus length no more than 40 m. A data rate of 125 kbps would allow a network length up to 500 m. However, it is allowed to use bridge devices or repeaters to increase the allowed distance to more than 1 km. 2.2. ISA100.11a The ISA100.11a standard is intended to provide reliable and secure wireless operation for non-critical monitoring, alerting, supervisory control, open loop control, and closed loop control applications [7,9, 10]. The components of an ISA100.11a network consist of the security
Fig. 1. CAN bus arbitration example.
Fig. 2. ISA100.11a mesh network.
manager, system manager, gateway, backbone routers, and field devices as depicted in Fig. 2. The system manager performs policy-based control of the network runtime configuration, monitors, and reports on communication configuration, performance, and operational status. The security manager provides security services while gateway provides an interface between ISA100.11a field network and plant network. Backbone router enables external networks to carry ISA100.11a-compliant packet by encapsulating the PDUs (Protocol Data Units) for transport, allowing ISA100.11a network to use other networks. However, ISA100.11a standard is not specified particularly the data network for backbone. In that case, the backbone could be an IEEE 802.11, an industrial Ethernet, or any other network which has an interfacing feature to the plan network [7]. Furthermore, the backbone routers are employed to extend the routing capability via the backbone. By using a backbone router device, it allows the ISA100.11a network to communicate with other networks. ISA100.11a protocol supports star, mesh, and the combination of both topologies. The physical layer of ISA100.11a devices is constructed based on IEEE 802.15.4 PHY standard that uses Direct-Sequence Spectrum Spreading and O-QPSK (Offset-Quadrature Phase-Shift Keying) modulation [11]. ISA100.11a only operates in a 2.4-GHz band, using IEEE 802.15.4 channels 11–25. Channel 26 is defined as optional in ISA100.11a. Each channel is spaced 5-MHz apart and has a bandwidth of 2 MHz. The MAC (Media Access Control) of ISA100.11a implements both TDMA (Time Division Multiple Access) and CSMA/CA (Carrier Sense Multiple Access with Collision Detection and Collision Avoidance) mechanisms. The usage of TDMA allows ISA100.11a to provide a contention free period which is known as dedicated time slot. The main advantage of dedicated time slot guarantees one node to transfer data in a particular slot without colliding with other data from another node. However, dedicated time slot requires time slot reservation in other to attempt the slot. Also, time slot can be wasted if node failed to transfer the data in those reservation slots. Due to that reason, the dedicated time slot is designed for predictable and regular traffic to achieve QoS (Quality of Service), which is desired for industrial applications. In comparison, the shared time slot is adopted using CSMA/CA algorithm. The advantage of the shared time slot provided a chance for every node to occupy the slot. Nevertheless, in shared time slot, each node competed in getting the slot in transmitting the data. It is recommended that shared time slot is used for high priority and fewer predictable data such as alarm and retry. The timing axis of each device is divided into configurable fixed time slot duration, with the typical value of 10–12 ms. A collection of time slots repeating in one cyclic schedule forms is called superframe. The length of the superframe is configurable and can vary from one device to another. In general, longer-period superframes result in higher data latency and lower bandwidth, but with reduced energy consumption and less concentrated allocation of digital bandwidth [7]. Unlike the IEEE 802.15.4, in ISA100.11a the number of retries depends on the packet living time determined by MaxLifeTime.
34
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
ISA100.11a transport layer supports data exchange with other networks using tunneling mechanism. The protocol defines the tunneling via un-buffered client and via gateway. In un-buffered client, the ISA100.11a node has direct communication with other nodes from different protocols. In most legacy protocols, this method is not energy efficient due to lengthy response time related to sleeping devices [7]. In tunneling via gateway, the data exchange between ISA100.11a and other protocols is stored or buffered and gateway forwards the data to the destination node. 3. Interconnecting CAN bus over ISA100.11a wireless network 3.1. System model A network topology model shown in Fig. 3 is used in this paper to describe the CAN-ISA100.11a hybrid network. The network model is intended to represent common network architecture in the industry where the main focuses are monitoring and process control. Process control is performed in Distributed Control System (DCS), in which DCUs are the controller element. The DCUs are distributed throughout the system and connected by CAN bus network for communication. DCUs transmit a control message, which usually has small size [12], to field devices such as sensors and actuators. The field devices are connected to a gateway and communicate with the gateway through ISA100.11a wireless network. The field devices report monitoring message to DCUs with varying sizes, depending on application requirement. Three types of node are defined, which are CAN node, gateway node, and ISA100.11a node. The CAN node only has CAN bus (CAN2.0B) technology and represents DCUs. The gateway node acts as an interface for both CAN bus and ISA100.11a and understands the MAC layer of both network technologies. Gateway also represents the system manager and the security manager in the ISA100.11a system. Finally, ISA100.11a node is ISA100.11a-compliant device that represents sensor, actuator, or end devices. 3.2. General framework A framework is proposed to interconnect CAN2.0B network that communicates through ISA100.11a wireless network. For routing purpose, a designated CAN transmitted the data to a dedicated ISA100.11a through the gateway. Both CAN and ISA100.11a nodes have knowledge about the source and destination address for every data packets. Moreover, an important function of the gateway is to
translate any incoming traffic from CAN node into ISA100.11a-compliant message format and forwards the traffic to a designated sensor node, and vice versa. The maximum message size that can be accommodated by CAN2.0B messages is 8 bytes while ISA100.11a supports maximum message size of 96 bytes. This specification enables message arriving from CAN nodes to be encapsulated directly into ISA100.11a DSDU (Data link Layer Service Data Unit) frame after CAN header is stripped. After the message from the gateway is received at a designated ISA100.11a node, header parts of ISA100.11a are decapsulated and CAN2.0B messages are extracted from ISA100.11a DPDU (Data link Layer Protocol Data Unit) to be processed by ISA100.11a nodes. However, the amount of data transmitted from ISA100.11a node may be more than 8 bytes, hence fragmentation is necessary for carrying an ISA100.11a message in CAN2.0B message format. Incoming message from ISA100.11a nodes to the gateway with size of more than 8 bytes must be fragmented into a small fragment of 8 bytes before being encapsulated into CAN message format and forwarded to CAN node. Upon receiving the message from a gateway, MAC layer of CAN node buffers incoming messages to construct the original data from ISA100.11a node before sending it to higher layer. Fig. 4 shows message frame ISA100.11a and CAN bus, respectively. The CAN standard does not dictate the specific requirement of the arbitration field, although many higher level protocols define the meaning of each identifier bits. One can use the first few bits for priority and the remaining bits to identify the message type. On the other hand, it is evident that the fragmentation requires the sequence number attached to each fragment so that the transmitted information can be reconstructed by the receiver. The maximum message size of 96 bytes from ISA nodes, therefore maximum number of fragment created by the gateway is 12 fragments, implying that 4 bits are necessary for fragment sequence number. Hence, it is proposed that 4 out of 29 bits in CAN identifier are reserved as fragment sequence number. Both CAN bus and ISA100.11a support message prioritization, where the message with higher priority has a better probability to gain access to the channel. In ISA100.11a, message prioritization is supported during the contention period with CSMA/CA. Up to 16 message classes are available, 4 bits are reserved for this number AlertPriority, with only 5 class usage suggested by standard as shown in Table 1. Priorities within a shared time slot are managed by configuring delay time before performing CCA (Clear Channel Assessment) (τ[i]). A device with fewer critical requirements may be configured to delay its transmission slightly later in the time slot.
Fig. 3. Simulation scenario with 10 ISA nodes, 6 CAN nodes, and 1 gateway.
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
35
(a) Encapsulation
(b) Fragmentation Fig. 4. Message translation: (a) from CAN node to ISA node (b) from ISA node to CAN node.
In CAN2.0B protocol, with 29-bit identifier, more than 16 message classes are supported. A standard point of view for message prioritization is proposed in the gateway model so that a message priority can be translated properly, both from ISA100.11a nodes to CAN nodes, and conversely. Hence, the number of bits allocated for priority in CAN bus is set to 4, consistent with ISA100.11a. A one-to-one priority mapping can be carried out using this configuration. Fig. 5 depicts the priority and sequence number bits inside CAN identifier field. The left-over bits in CAN identifier can be used for another purpose such as a destination address, and a source address. Finally, it is important to note that while CAN bus supports data rate up to 1 Mbps, ISA100.11a only accommodates maximum data rate of 250 kbps. Thus, the maximum data rate supported by CAN-ISA100.11a hybrid network is 250 kbps. Increasing data rate of CAN bus will only further cause an imbalance network, since the packet from CAN nodes may accumulate in the gateway and wait a long time before it can be forwarded to the gateway.
though it has higher priority. As a consequence, prioritization will be meaningless since node with lower priority may have better access to the channel and consequently, lower delay. Moreover, this may result in higher priority packet fails to meet its stringent deadline while less stringent deadline of lower priority packet is met. Therefore, the duration of τ[i] must be regulated so that the node with higher priority message would always have a better probability to access the channel than the lower priority one. This guarantee of priority is called priority assurance (PA) scheme and done by ensuring that the delay time τ[i] of a node with the lowest priority message does not exceed the transmission time of the highest priority message. Let P be a total number of priorities in one subnet, then the aforementioned condition is true if:
3.3. Proposed scheme for CAN-ISA100.11a hybrid network
where Tdrift is the maximum clock drift of a node with respect to gateway clock, Ttrans is the transmission time, TCCA = t1CCA + t2CCA is the total time to perform CCA, t1CCA is CCA duration, t2CCA is time interval between end of CCA and start of transmission, and Δτ is the difference between
To support multiple applications within a network ISA100.11a supports multiple levels of QoS. In ISA100.11a, delay time before performing CCA determines the priority of a packet. A device with high-priority message may be configured to transmit as early as possible within a shared time slot. Thus, if another device has claimed the time slot, the CCA of the delayed device might or might not detect that the channel is in use, depending on the message transmission time (Ttx) and the duration of τ[i]. In Fig. 6, node 2 detects that the medium is busy because of transmission from node 1. However, node 3 identifies that the medium is idle since node 1 has finished its transmission by the time node 3 performs CCA. Thus, node 3 will be able to claim the time slot while node 2 has to defer its transmission even
T trans max T drift ; T CCA b Δτ b P−1
ð1Þ
Table 1 Packet classes. Category
Type
Priority
Control
Closed loop regulatory control Closed loop supervisory control Open loop control Alerting Logging
1 2 3 4 5
Monitoring
36
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
Fig. 5. Priority and sequence number bit in CAN2.0B.
two successive CCA delay time. Parameter of the collision time model is presented Table 2. The transmission time is determined by data size and header length. The default value of ISA100.11a header is 31 bytes as illustrated in Fig. 7 and Table 3. Only one node can claim one shared time slot in this PA scheme and nodes with lower priority message will always defer its transmission when a higher priority node already claimed the time slot. This PA ensures the prioritization hierarchy and is easily implemented when the packet size is large. The second scheme proposed in this paper is to reduce the bottleneck effect of ISA100.11a in a hybrid network in terms of delay [13]. The idea is to limit the time slot resource allocation on a node based on the length of packet transmittal. This can be done in two ways, short time slot and shared time slot (Fig. 8). Industrial process control and monitoring systems have characteristics of small data sizes and periodic messages. Consequently, even though ISA100.11a can accommodate data size up to 96 bytes, in most cases only a small fraction of time slot is used by a device, leading to wasted time slot resource. By limiting the time slot duration based on the size of the packet to send the bottleneck effect of ISA100.11a in a hybrid network, it can be reduced to further an extent as illustrated in Fig. 7. Assuming that preparation time is zero, which can be translated that the start-up transmitter radio is performed before the beginning of observed time slot, then from the ISA100.11a time slot template, the total time needed by a node to send a message is T tot ¼ T CCA þ T trans þ t TA þ t ACK ;
ð2Þ
where tTA is turn-around time, and tACK is ISA100.11a ACK duration. Then, the time slot duration Td of ISA100.11a can be expressed as T d ≥ T tot þ 2T drift :
ð3Þ
In shared time slot, where one time slot can be accessed by multiple nodes as illustrated in Fig. 8(c). This is basically the same as the standard case in Fig. 6, with both cases allowing more than 1 node to be transmitted in 1 time slot. However, the CCA delay time in shared time slot is carefully managed so that the higher priority transmission will always get better channel access than the low priority one. One way to do it is by simply dividing the time slot into the number of nodes available in a subnet. However, this is usually not feasible since there is a high possibility of a high number of nodes in an industrial subnet. Another way is by dividing the time slot into M fractions, where M ¼
t
Td T tot þ2T drift
b.
The first M-1 fractions are allocated for M-1 nodes/highest priorities, while the last fraction is allocated for the remaining nodes/priorities, with the same Δτ configuration as in PA scheme for nodes/priorities in the last fraction. 4. Simulation model Simulation is performed using OPNET modeler in a network scenario shown in Fig. 3. The simulation scenario consists of 5 CAN nodes and 10 ISA100.11a nodes, where each ISA100.11a node is connected to a gateway in the star topology. The maximum data rate of both CAN nodes and ISA100.11a nodes is set to 250 kbps. The superframe length of ISA100.11a node is always kept constant at 25 slots, with time slot duration of 10 ms. The lifetime of ISA100.11a packets is set to be 30 s, as suggested by the standard. All CAN nodes and ISA100.11a nodes generate packet with the same inter-arrival time (λ). The simulation duration is 100 s and packets are generated with different start times which follows a uniform distribution from 0 to 5. The timing synchronization between gateway and ISA100.11a nodes is assumed to be perfect. The default wireless models of OPNET library are used for emulating the background noise, propagation delay, radio interference, received power, bit error rate, etc.
Fig. 6. CCA delay time problem in ISA100.11a.
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41 Table 2 Parameters of the collision time model.
37
Table 3 ISA100.11a header.
Parameter
Definition
Value
Field
Length
τ[i] t1CCA t2CCA TCCA Ttrans tTA tACK
Delay time before performing CCA CCA duration CCA interframe space CCA total time Transmission time Turn-around time Duration of an ISA100.11a ACK packet
Varying 128 μs 192 μs 320 μs Varying 1032 μs
MAC header (MHR) DHR header (DHDR) DHR MAC extension sub-header (DMXHR) DHR auxiliary sub-header (DAUX) DHR routing sub-header (DROUT) DHR address sub-header (DADDR) Media access control sub-layer Message integrity code (MMIC) Frame check sequence
15 1 3 0 2 4 4
576 μs
To model priority on ISA100.11a, each ISA100.11a node produces only one kind of priority packets. 10 of the ISA100.11a nodes are divided into five categories to represent five priority classes used in ISA100.11a. Therefore, simple FIFO (First In First Out) queuing is used instead of priority queuing. However, priority queuing needs to be implemented in the gateway, otherwise packet with lower priority may block the higher priority packet in case of FIFO queuing. ISA100.11a nodes are always set to send data with packet size of 100 bits. In CAN node, data is generated with CAN ID that is uniformly distributed from 0 to 2047, with constant size of 64 bits. In all simulation cases, the gateway node is set not to generate any packet except beacon for ISA100.11a nodes and only does packet fragmentation/encapsulation and packet forwarding. 5. Performance evaluation 5.1. Full contention setup The delay characteristic of the proposed hybrid network CANISA100.11a is evaluated under full contention slot setup, where all time slots in a superframe are configured as shared time slots. A simulation is carried out with different network loads, where the packet interarrival time for each node is set from 0.1 to 1 s which follows Poisson distribution. Fig. 9 shows the delay characteristic of CAN-ISA100.11a hybrid network for different packet inter-arrival times in full contention slot setup. The delay from ISA nodes to the gateway and the opposite are omitted for the sake of figure clarity since they coincide with the endto-end delay for both paths. The obtained result shows that more than 95% of the total end-to-end delay is contributed by path from ISA100.11a node to gateway and the opposite, while delay from gateway to CAN node and from CAN node to gateway is relatively constant and insignificant compared to the total end-to-end delay. This is because of the slotted CSMA/CA mechanism employed in ISA100.11a standard, which requires exponential backoff to be applied to resolve collisions. When a node has a packet to transmit in shared slot and it detects that the channel is busy, the shortest waiting period before the next retransmission attempt is the time slot duration [14], which is set to 10 ms. On the other hand, a node can start transmitting a message as soon as it detects that the bus is free in CAN bus. The longest waiting time after collision detection is the transmission time of CAN message with maximum data size, which is 129 bits in CAN2.0B standard. Therefore with data rate of 250 kbps, the longest waiting time for a CAN node is 0.52 ms. It is also shown in Fig. 9 that a sudden increase of delay occurs as the inter-arrival time goes shorter. When the packet inter-arrival time is
2
shorter than the total transmission time, the time delay increases and it will become unbounded or converge to MaxLifeTime as the simulation time goes to infinity. Since ISA100.11a is the bottleneck in the hybrid network, then the packet inter-arrival time must be larger than the total transmission time of ISA100.11a in order to provide bounded delay requirement of industrial networks. Simulation shows that the time delay in CAN bus is larger in the case of packet transmission from ISA100.11a nodes to CAN nodes due to packet fragmentation and larger packet size sent from ISA100.11a nodes. On the other hand, the path from CAN nodes to ISA100.11a nodes converges to MaxLifeTime, where most packet will be dropped by this state, faster than the path from ISA100.11a nodes to CAN nodes. This result implies the limit of gateway capacity to transmit ISA100.11a packet. Since all transmitted packet from CAN nodes must pass through the gateway, gateway load capacity also becomes bottleneck of the hybrid network. 5.2. Full dedicated slot setup The delay characteristics when all the time slots in ISA100.11a superframe are set to dedicated slot are shown in Fig. 10, which are similar to the full contention slot setup one. However, the minimum average end-to-end delay, i.e., delay when the inter-arrival time is large, is higher in the case of full dedicated slot setup. This can be explained by the longer access delay in TDMA than CSMA/CA scheme. In CSMA/CA, once a packet arrives at the transmitter, transmission of the packet can be attempted immediately at the next time slot, assuming that there is no previous packet waiting in the queue. However, packet transmission cannot be attempted immediately in TDMA since the next time slot may not belong to the current node. This access delay is influenced mainly by superframe length, where lower superframe length leads to lower delay. The full dedicated slot setup has on average a longer end-to-end delay compared to the full contention slot setup as depicted in Fig. 11. However, in contrast to CSMA where nodes may be hindered from transmitting, nodes using TDMA will always get timely access channel. Low delay is beneficial but for packets that have a requirement for a finite delay, it is more important that the deadlines are met. 5.3. Proposed scheme evaluation In this section, the performance of the proposed schemes in CANISA100.11a hybrid network is evaluated in full contention slot setup.
Fig. 7. ISA100.11a header.
38
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
Fig. 8. The illustration of PA (a), short time slot (b), shared time slot (c).
The end-to-end delay of PA scheme is compared with no priority case (Δτ = 0) and standard case illustrated in Fig. 6 (T trans/(P − 1) b Δτ b T slot /P). Fig. 12 shows that in PA, the packet with higher priority always gets better channel access and thus, lowers end-toend delay. However, in the standard case, a packet with the lowest priority (priority 5) has lower end-to-end delay than packet priorities 2, 3,
and 4, which imply better channel access for packet priority 5. Moreover, packet priority 3 has the worst channel access instead of priority 4 or 5. This is the result of channel blocking by packet transmission of one level higher priority. Highest packet priority (priority 1) will never be blocked, while the 4 other priorities will be blocked by one level higher priority. However, packet with class 5 will always be able to access the
Fig. 9. Full contention slot setup.
Fig. 10. Full dedicated slot setup.
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
39
Table 4 Standard case. Transmitting node
Blocked node
Unaffected node
1 2 3 4 5
2 3 4 5 –
3, 4, 5 4, 5 5 – –
resource by restricting time slot resource allocation based on packet size, short time slot gives the lowest delay. This result can be explained by the difference in ISA100.11a backoff time in both schemes. Backoff time in ISA100.11a, which is a multiple of the time slot [15], is the random length of time that a node waits when channel is sensed busy or when transmitted packet is failed to be acknowledged. Reducing TD from the standard 10 ms to 5 ms decreases the overall backoff time. In shared time slot, since the TD remains unchanged, the backoff time does not decrease unlike in short time slot. Fig. 11. Contention slot and dedicated slot comparison.
5.4. With the presence of transmission error channel even though packet class 1, 2, or 3 has claimed the time slot and packet with class 4 will be able to access channel when packet class 1 or 2 has transmitted. Table 4 illustrates the standard case in our simulation. Fig. 13 shows the effect on priority to packet's end-to-end delay. PA scheme is applied so that during one time slot, only one packet is allowed to be transmitted. Shorter packet inter-arrival time leads to higher end-to-end delay as expected. It is shown that the PA scheme provides the preferential treatment for high priority packet at the expense of lower priority packet. Packet with lower priority will experience channel access scarcity and converge to MaxLifeTime with the increase of packet inter-arrival time. Fig. 14 shows the average end-to-end delay for every scheme when transmitting packet with the same size. The packet is transmitted from ISA100.11a nodes and received by CAN nodes. In our simulated shared time slot, one time slot can be accessed by n = 2 nodes with maximum access time of TD/n, where TD = 10 ms. On the other hand, the TD value in short time slot scheme is set to be 5 ms for a fair comparison. It can be seen that the PA scheme gives higher end-to-end delay compared to other schemes, which is natural since one slot can only be used by one node in PA scheme and other nodes who want to access the time slot must delay for random backoff time. On the other hand, even though both short and shared time slots reduce wasted time slot
The communication quality over working habitat environments could vary significantly over time and space [16,17]. ISA100.11a network operating in industrial environments is subjected to noise and interference (electromagnetic, other wireless devices), leading to variable bit and packet errors. In this section, the impact of transmission error to CAN-ISA100.11a hybrid network is evaluated. The ISA100.11a employs three methods to limit the use of undesirable radio channels and to reduce the impact of interference from other wireless networks: clear channel assessment (CCA), spectrum management, and adaptive channel hopping. CCA is performed by a device that is about to initiate the transmission to detect if the channel is busy or not. Transmission is canceled if channel is detected as busy prior to transmission. Spectrum management limits data link layer operation to a subset of channels. As shown in Fig. 15 channels 15, 20, and 25 in the IEEE 802.15.4 do not substantially overlap with any of the three common IEEE 802.11 channels. For this reason, IEEE 802.15.4 channels 15, 20, and 25 may reasonably be designated as slow hopping channels. Limiting slow hopping operation to channels 15, 20, and 25 is an example of spectrum management. Adaptive channel hopping is a technique whereby a device may autonomously treat transmit links on problematic channels as idle, thus reducing unnecessary interference and wasted energy on channels with history of poor connectivity.
Fig. 12. PA delay compared to other case.
Fig. 13. Delay of each priority in PA.
40
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
Fig. 14. Delay for different schemes.
when packet size is 100 bits (total MAC layer load is 348 bits). When error packet is received by the gateway, it drops the packet and refuses to send ACK. The sender then performs a backoff procedure until the packet is either eventually transmitted successfully or its lifetime is over. Fig. 16 shows the average end-to-end delay when transmission error is considered. As it is expected, higher error results in higher delay needed to successfully transmit a packet and the delay converges to MaxLifeTime as transmission error increases. It can be seen from the simulation result that ISA100.11a deals with transmission error effectively. When packet arrival rate is less than 4 packets per second (Inter-arrival time higher than 0.25 s), the average end-to-end delay under severe interference environment remained below 100 ms, which is known to be sufficient for process control and monitoring in the industry [18]. The deadline constraint of 100 ms cannot be met by higher packet arrival rate. However, the configurable ISA100.11a time slot enables this deadline constraint to be met even under interference environment and high packet load. When TD is reduced to 5 ms, CANISA100.11a hybrid network is able to perform packet transmission below 100 ms when packet load is 10 packets per second and PER is 3.5%. 6. Conclusion
The CAN-ISA100.11a hybrid network model is evaluated considering the effect of transmission error. Typical monitoring scenario is considered, where ISA100.11a in Fig. 3 sends its monitoring data to CAN nodes. Additive white Gaussian noise (AWGN) is used as an error model. Approximately 3.5% and 30% statistical packet error rates (PERs) are achieved by configuring bit error rates to 10−4 and 10−3, respectively,
In this paper, a framework for building a hybrid network composed of CAN bus and ISA100.11a industrial wireless network is presented. Packet encapsulation and fragmentation are employed to forward packet to a different network technology. Through the simulation, the network characteristic of CAN-ISA100.11a hybrid network under
Fig. 15. Overlapped channels in IEEE 802.11 and IEEE 802.15.4.
Fig. 16. The average end-to-end delay of packets sent from ISA100.11a nodes to CAN nodes with the presence of wireless transmission error.
F.P. Rezha et al. / Computer Standards & Interfaces 42 (2015) 32–41
different network settings is studied. Simulation results show that the ISA100.11a network becomes the bottleneck of the system and contributes more than 95% of the total end-to-end delay. The delay of each packet priority is investigated and priority assurance scheme is proposed based on the adaptation of CCA delay time in ISA100.11a. Priority assurance provides the preferential treatment for high priority packet and suitable for large packet size. Two schemes are proposed to reduce the bottleneck effect of ISA100.11a in CANISA100.11a hybrid network, which are short time slot and shared time slot. It is demonstrated in the simulation that short time slot enables CAN-ISA100.11a hybrid network to operate under industrial environment and satisfies industrial requirement. For future works, 1) we will propose to integrate ISA100.11a with internet network as ISA100.11a defines a network layer which is supported by IPv6 [7], and 2) we will implement proposed method in a practical network environment. Acknowledgments This research was supported by the MSIP (Ministry of Science, ICT and Future Planning), Korea, under the CITRC (Convergence Information Technology Research Center) support program (IITP-2015H8601-15-1011) supervised by the IITP (Institute for Information & communications Technology Promotion). References [1] J.R. Moyne, D. Tilbury, The emergence of industrial control networks for manufacturing control, diagnostics, and safety data, Proc. IEEE 95 (1) (2007) 29–47, http://dx.doi.org/ 10.1109/JPROC.2006.887325. [2] B. Lu, V. Gungor, Online and remote motor energy monitoring and fault diagnostics using wireless sensor networks, Ind. Electron. IEEE Trans. 56 (11) (2009) 4651–4659, http://dx.doi.org/10.1109/TIE.2009.2028349. [3] C. Bayilmis, I. Erturk, C. Ceken, I. Ozcelik, A CAN/IEEE 802.11b wireless LAN local bridge design, Comput. Stand. Interfaces 30 (3) (2008) 200–212, http://dx.doi.org/10.1016/ j.csi.2007.08.011 (URL http://www.sciencedirect.com/science/article/pii/S09205 48907000724.). [4] X. Ren, C. Fu, T. Wang, S. Jia, Can bus network design based on Bluetooth technology, Electrical and Control Engineering (ICECE), 2010 International Conference on 2010, pp. 560–564, http://dx.doi.org/10.1109/iCECE.2010.144.
41
[5] F. Li, L. Wang, C. Liao, Can (controller area network) bus communication system based on MATLAB/Simulink, Wireless Communications, Networking and Mobile Computing, 2008. WiCOM'08. 4th International Conference on 2008, pp. 1–4, http://dx.doi.org/10. 1109/WiCom.2008.1004. [6] H. Martinez, C. Morales, O. Martinez, Automation of a robotic arm by analysing the CAN protocol, Electronics, Communications and Computers, 2004. CONIELECOMP 2004. 14th International Conference on 2004, pp. 2–7, http://dx.doi.org/10.1109/ ICECC.2004.1269539. [7] Wireless Systems for Industrial Automation: Process Control and Related Applications, ISA100.11a, Working Group, 2009. 1–817. [8] CAN specification version 2.0, Robert Bosch Gmbh. [9] S. Petersen, S. Carlsen, WirelessHART versus ISA100.11a: the format war hits the factory floor, Ind. Electron. Mag. IEEE 5 (4) (2011) 23–34, http://dx.doi.org/10. 1109/MIE.2011.943023. [10] G. Wang, Comparison and Evaluation of Industrial Wireless Network Standards ISA100.11a and WirelessHART(Master's thesis) Chalmers University of Technology, 2011. [11] IEEE standard for local and metropolitan area networks—part 15.4: Low-Rate Wireless Personal Area Networks (LR-WPANs), IEEE Std 802.15.4-2011 (Revision of IEEE Std 802.15.4-2006)2011. 1–314, http://dx.doi.org/10.1109/IEEESTD.2012. 6185525. [12] K. Kredo II, P. Mohapatra, Medium access control in wireless sensor networks, Comput. Netw. 51 (4) (2007) 961–994, http://dx.doi.org/10.1016/j.comnet.2006. 06.012. [13] S.Y. Shin, F. Rezha, Extending CAN protocol with ISA100.11a wireless network, ICT Convergence (ICTC), 2012 International Conference on 2012, pp. 472–476, http:// dx.doi.org/10.1109/ICTC.2012.6387178. [14] N.Q. Dinh, S.-W. Kim, D.-S. Kim, Performance evaluation of priority CSMA-CA mechanism on ISA100.11a wireless network, Computer Sciences and Convergence Information Technology (ICCIT), 2010 5th International Conference on 2010, pp. 991–996, http://dx.doi.org/10.1109/ICCIT.2010.5711205. [15] F. Rezha, S.Y. Shin, Performance evaluation of ISA100.11a industrial wireless network, IET Information and Communications Technologies (IETICT), 2013 International Conference on 2013, pp. 585–589, http://dx.doi.org/10.1109/ICTITC.2013. 6387178. [16] L. Mottola, G.P. Picco, M. Ceriotti, C. Gună, A.L. Murphy, Not all wireless sensor networks are created equal: a comparative study on tunnels, ACM Trans. Sen. Netw. 7 (2) (2010) 15:1–15:33, http://dx.doi.org/10.1145/1824766.1824771. [17] J. Zhao, R. Govindan, Understanding packet delivery performance in dense wireless sensor networks, Proceedings of the 1st International Conference on Embedded Networked Sensor Systems, SenSys '03, ACM, New York, NY, USA 2003, pp. 1–13, http://dx.doi.org/10.1145/958491.958493. [18] T.H. Kim, J.Y. Ha, S. Choi, Improving spectral and temporal efficiency of collocated IEEE 802.15.4 LR-WPANS, mobile computing, IEEE Trans. 8 (12) (2009) 1596–1609, http:// dx.doi.org/10.1109/TMC.2009.85.