Wireless Sensor Networks
The use of wireless communication networks has undergone a revolution during recent years, in application areas such as factory automation, home automation, vehicle-to-vehicle communications and Wireless Sensor Networks (WSN).
In what concerns Wireless Sensor Networks (WSN)
, a few communication standards are established and transceivers are commercially available at low cost. Unfortunately, they were not designed for satisfying real-time requirements. Researchers at CISTER/IPP-HURRAY
are addressing these issues from the complementary perspectives of: (i) the use of commercially available technologies versus the use of new solutions untethered by existing standards; (ii) the use of time-triggered paradigms versus event-triggered paradigms; (iii) the provision of short-term solutions recognizing the needs of companies for wireless solutions with mature implementations and compliant with standards in order to simplify interoperability versus the need to push the state-of-art and explore new innovative solutions. ART-WiSe
are two representative ongoing research frameworks addressing these complementary perspectives.Edit
(Architecture for Real-Time communications in Wireless Sensor networks) research framework aims at the specification of a scalable two-tiered communication architecture for improving the timing and reliability behaviour of WSNs. One of the major goals is to use, as far as possible, existing standard communication protocols and commercial-off-the-shell (COTS) technologies – IEEE 802.15.4/ZigBee for Tier 1 and IEEE 802.11 for Tier 2. Another objective is to provide a large-scale nature to the communication infrastructure.
Results so far attained include the provisions of methodologies to analyse and dimension star and cluster-tree 802.15.4/ZigBee networks, namely being able to compute throughput and message delay bounds for the Guaranteed Time Slot (GTS) mechanism and ZigBee Router’s buffer requirements in cluster-tree networks. Important add-ons to these protocols that are backward compatible, have already been proposed and tested: (i) a traffic differentiation mechanism for CSMA/CA to provide more guarantees to high priority messages by appropriate tuning of MAC parameters; (ii) an implicit GTS allocation mechanism (i-GAME) allowing improved bandwidth utilization and adaptation by nodes sharing a GTS; (iii) beacon/superframe scheduling in ZigBee cluster-tree networks enabling a synchronized cluster-tree WSN where each cluster may operate with different and low duty-cycle, thus prolonging network lifetime.
An open-source toolset for the IEEE 802.15.4/ZigBee protocols have been made publicly available: Open-ZB
. The Open-ZB ensemble includes: (i) the implementation of the IEEE 802.15.4 protocol in TinyOS, for both the MICAz and TelosB motes; (ii) the implementation of the ZigBee Network Layer for supporting synchronized multiple cluster topologies (the Cluster-Tree topology) in TinyOS, for the TelosB motes; (iii) a simulation model of the IEEE 802.15.4 protocol in OPNET; (iv) tools for timing analysis and network dimensioning.Edit
We have also recognized that no existing wireless communication standard performs well for sporadic message streams with real-time requirements. For this reason, a novel MAC protocol, dubbed Wireless Dominance Protocol (WiDOM
), was designed for wireless systems. This protocol gives the wireless channel a similar behavior as a Controller Area Network (CAN) bus. It is prioritized and this can be achieved even without having the ability to listen and transmit simultaneously. Because of the prioritization, it is possible to compute message response-times of sporadic message streams.
All theorethical aspects have been reasoned out, including detailed timed-automata of the protocol and response-time analysis. Ongoing research work addresses the design of multiple broadcast domain versions of the WiDOM (checkout WiDOM-MBD
). This work is being carried out in close co-operation with CMU as well as the development of an efficient WiDOM platform.Edit
Data Aggregation and Fusion
In WiDOM, as in any dominance-based protocol (see our PrioMAC
webpage), the MAC protocol elects the computer node with the highest priority (lowest number) and gives it access to the medium. This election procedure can also be used to compute the minimum value of sensor readings distributed on different computer nodes and, remarkably, this computation can be performed with a time-complexity that is independent of the number of computer nodes. This procedure forms an important building block for other useful calculations; for example, it is possible to efficiently extract an interpolation of sensor readings and this can be performed with a time-complexity that is independent of the number of computer nodes. This is a crucial asset for addressing problems in future Large-Scale Dense Sensor Networks for Cyber-Physical Systems (CPS).
In this way, we are addressing important challanges in Cyber-Physical Systems such as: (i) scalable architectures and; (ii) the integration of physical dynamics with computations and communications.
For more details, please visit this webpageEdit
The CAN bus is an example of a commercial-off-the-shelf (COTS) technology that offers a prioritized MAC protocol based on the binary countdown / dominance protocol. CAN is used in a wide range of
applications, ranging from vehicles to factory-automation. Its wide application fostered the development of robust error detection and fault confinement mechanisms, while at the same time maintaining its cost effectiveness. An interesting feature of CAN is that the maximum length of a bus can be traded-off for lower data rates. It is possible to have a CAN bus with a bit rate of 1Mbit/s for a maximum bus length of 30 meters, or a bus 1000 meters long (with no repeaters) using a bit rate of 50 Kbit/s. While the typical number of nodes in a CAN bus is usually smaller than 100, with careful design (selecting appropriate bus-line cross section, drop line length and quality of couplers, wires and transceivers) of the network it is possible to go well above this value (which is often also imposed by the software of the CAN transceivers).
We have been using CAN for efficient distributed computation of aggregated quantities. The use of such a prioritized MAC protocol is proposed to be in a way that priorities are dynamically established during runtime as a function of the sensed values involved in the specific distributed computation.Edit
Cooperative Computing and Embedded Platforms for QoS-Aware Applications
Quality of Service (QoS) is considered an important user demand, receiving wide attention in real-time research. However, in most systems, users do not have any real influence over the QoS they can obtain, since service characteristics are fixed when the systems are initiated. Furthermore, applications (and their users) can differ enormously in their service requirements as well as in the resources which need to be available to them. These applications present increasingly complex demands on quality of service, reflected in multiple attributes over multiple quality dimensions. At the same time, the use of embedded devices with wireless network interfaces is growing rapidly. The increasing pervasiveness of these devices in the everyday life is changing the way computing systems are used and interact, creating a new, highly dynamic and decentralized environment.
Such an environment is expected to be heterogeneous, consisting of nodes with several resource capabilities. For some of those there may be a constraint on the type and size of applications they can execute with user's acceptable quality of service. For example, video conferencing systems often use compression schemes that are effective, but computationally intensive, trading CPU time for limited network bandwidth. A mobile embedded client with limited CPU and memory capacity, but sufficient link speed with nearby more powerful (or less congested) devices, can divide the computational intensive processing into tasks and spread it among different neighbors.
The main goal of the work is thus to provide an adaptable framework for embedded systems with heterogeneous nodes, by allowing constrained devices to cooperate with more powerful (or less congested) neighbors, to meet allocation requests and handle stringent constraints, opportunistically taking advantage of global resources and processing power. Cooperation will be achieved via the formation of dynamic, temporary coalitions of nodes, which, due to their higher flexibility and agility, are capable of effectively respond to new, challenging requirements. Service allocation is performed by time-bounded distributed QoS-aware services, which are able to tradeoff computation time and resources for the quality of achieved results.
For more details, please visit our QoS
Programming Paradigms, Real-time Languages and OS
In Cyber-Physical Systems (CPS), computing is tightly integrated and interacting with the physical environment, and thus time is a crucial notion for the specification of the overall system.
We have been researching on RT Languages
such as Ada 2005 or Real-time Java. The eagerness within the CPS community is to address languages with temporal semantics, examples of which, albeit for different application contexts, are Giotto or Simulink.
In small embedded platforms, the separation between the operating systems (OS) and the programming languages has been fading out. TinyOS (see our Open-ZB
website or some of our WiDOM
implementations) is one example of this cross layered approach. In TinyOs, nesC (Programming Language) supports the design of small wrappers that abstracts hardware. Additionally, nesC supports interrupt-driven hardware approach for the concurrency model.Edit
Real-Time Systems; Scheduling and Schedulability Analysis
Historically, real-time (RT) computing systems were an important, but narrow, niche of computer systems, consisting mainly of military systems, air traffic control and embedded systems for manufacturing and process control. Meanwhile, the emergence of large-scale distributed systems, enabled by advances in networking technology and miniaturization, has broaden RT concerns into a mainstream enterprise, with clients in a wide variety of industries and academic disciplines. This tendency has been establishing real-time computing technology as a priority for commercial strategy and academic research for the foreseeable future and also for a wider number of applications.
The unit’s research work and experiences from applying RT technologies to industrial projects (e.g., RFieldbus
) and to factory communication systems (REMETER
) has led us to appreciate the importance of RT computing in the broader area of computing systems. Therefore, in the recent years, the unit has been working on applying this technology to solve different problems, arising from the perspective of more open RT computing systems, with heterogeneous networks and devices, combining RT and non-RT applications. We have been contributing with seminal research works in a number of areas: RT communication networks and protocols (see also TDMA-SS
); wireless sensor networks (HYDRA
); RT programming paradigms (RT-Lang
); cooperative computing and QoS-aware applications (QoS
); scheduling and schedulability analysis, including multiprocessor systems and stochastic analysis (SSA
), just to name a few.