From Distributed Sensing to Virtual Sensors: a Domain-Specific Language for Reactive Centralized Edge-Fog-Cloud Computation
2022 IEEE 20th International Conference on Embedded and Ubiquitous Computing (EUC)(2022)
Abstract
The widespread application of specialized embedded devices and their ever-growing sensing capabilities lead to an overload of raw data reaching the Cloud via the Internet of Things. Despite this massive amount of available data, data-driven applications still produce a limited impact on the real world. We argue that this limitation arises from the complexity the developers still face when engineering and deploying solutions on a plurality of embedded devices. Instead of focusing on constructing valuable information from raw data and designing algorithms to exploit it, the developers still have to figure out on their own: how to partition the computation between Edge, Fog, and Cloud; how to move partial results around in highly distributed solutions; how to create abstract interfaces to expose information-rich endpoints. This paper introduces the Virtual Sensor Domain-Specific Language (DSL), which builds the keystone for designing and developing powerful Computer-Aided Design tools and Integrated Development Environments to support the developers in focusing on information manipulation. The Virtual Sensor DSL is built on top of C++ to ease its adoption by the embedded development community. It introduces a reactive approach to data collection, technology mapping, and workload distribution. It allows the creation of adaptable Virtual Sensors, streaming processed information coming from the integration of multiple raw data streams, and it comes with integrated simulation capabilities, supporting prototyping. In this paper, we describe the entities the language offers, how the developers can exploit them, and analyze a real-world use case that benefitted from the Virtual Sensor DSL.
MoreTranslated text
Key words
domain-specific language,virtual sensor,reactive programming
AI Read Science
Must-Reading Tree
Example
![](https://originalfileserver.aminer.cn/sys/aminer/pubs/mrt_preview.jpeg)
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined