SensorMon: An Internet-of-Things System for Maintaining and Monitoring Sensor Device

The emergence and flourishing of the Internet of Things (IoT) are attracting increasing attention from various business domains and research fields. In fact, for numerous sensors, sensor device management is very crucial to the IoT environment. By reviewing the existing literature, we investigate the sensor device management architecture and visualization technologies. A few of them concern sensor state visualization and management. In this paper, we propose a novel visualization method based on composition map symbols for sensor state visualization. The composition method is based on the integration of multiple graph layers into a new composition symbol, which uses only a few simple graphs to represent various sensors. The method does not require predefining numerous symbols for various sensors and supports the dynamic symbolization in accordance with sensor states. On the basis of the novel visualization method, a system named SensorMon with a lightweight mobile app was developed to validate the effectiveness of our method for maintaining and monitoring sensors. The proposed method and implementation have potential applications in the IoT environment.


Introduction
The Internet of Things (IoT) is a new technology to connect physical things to digital virtual objects for monitoring or control, thus such things are turned into smart objects. The International Telecommunication Union (ITU) defines IoT as an infrastructure for the information society to interconnect physical and virtual objects through the integration of existing technologies. (1) The Cisco Internet Business Solutions Group predicted that a large IoT network with 50 billion devices will be generated by 2020, (2) including air monitoring, pressure, and trajectory location sensors. Facing such a vast number of sensors, the management of sensor data is a challenge.
There are a few studies on device management. In terms of the nature of sensors in IoT, heterogeneity and scalability are the two major considerations. Heterogeneity among different devices should be encapsulated by popular technologies such as web services and middleware, which provide uniform access services/interfaces to achieve a higher efficiency. (3) Besides heterogeneity, another challenge that IoT currently faces is scalability along with an increasing number of devices. (4) A Platform-as-a-Service (PaaS) framework was proposed on cloud as an efficient method that can upscale and downscale sensor devices. (5) As for the architecture, cloud-based and centralized schemes are the two most popular solutions. Centralized schemes use a central server for storage or management web service, which presents challenges in real-time data handling and data fusion among heterogeneous sensors. (3,6) Nevertheless, the centralized scheme is a good choice for the small IoT environment owing to its low cost and rapid deployment. The distributed cloud solution is more suitable for a large number of sensors with higher efficiency. Physical objects are mapped as virtual nodes in cloud-based sensor management and can enhance the sensor management capability through the use of the cloud computing ability. (7) Visualization is crucial for information extraction from massive sensor data. Despite the meaninglessness of sensor output values as a number, those values must be not only legible but also understandable to experts or the public without special knowledge. For visualization, sensor data can be divided into three categories: number-based, map-based, and synthetic approaches. Mining data to determine relationships by a variable is the classical characteristic of number-based approaches. The numeric results are popular visualization glyphs with statistical charts or graphs. However, the abstract numbers and graphs cannot describe geographical distributions. To this end, map-based approaches make full use of cartography to represent the distribution of all sensor information. For example, the interactive map visualization method has been applied to the interactive visualization and analysis of realtime sensor data. (8) In contrast, the existing synthetic approaches based on map and numeric methods are the widely used visualization technologies. The sensor-data monitoring dashboard is a representative synthetic solution. A sensor-data dashboard was proposed for the domain variability by compositing meta and domain models. (9) The synthetic solution has also been applied to the complex interactive analysis of real-time traffic data. (10) The visualization technologies of sensor data have developed rapidly, but limited literature concerning sensor state management and visualization is available. By reviewing the existing related literature and interviewing the business department, we conclude that the visualization of the sensor state must satisfy the following requirements: (1) capable of dynamic real-time mapping; (2) supports heterogeneity and scalability; (3) must support the portable filling and uploading of real-time inspection information for the on-site maintenance of a sensor device. Therefore, taking into account these requirements, we developed the SensorMon system for sensor monitoring and maintenance with novel method of sensor state visualization.
The contribution of this paper is twofold.
(1) This paper addresses research requirements in the dynamic visualization of the sensor state, and a composition-based map symbol generating method is proposed. (2) We report a practical system named SensorMon, which was developed to demonstrate the effectiveness and efficiency of the visualization method for sensor state monitoring. Moreover, a mobile app was developed to support portability in sensor maintenance.
The rest of this paper is organized as follows. In Sect. 2, the novel visualization method for the sensor state is described. In Sect. 3, an analysis of business requirements is covered. Section 4 presents the system implementation with the novel visualization method. Some functional modules are introduced here. We conclude our work and provide paths for future work in Sect. 5.

Composition-based Method for Sensor State Visualization
The IoT technology provides intelligent features for applications that are widely used, for example, in smart cities. The IoT projects being deployed include many types of sensor. For example, light, temperature, and humidity sensors, GPS, and other sensors have been deployed in a smart campus project. (11) Everyday, these sensors generate zettabytes of sensing data. Considering the heterogeneous features and vast amount of data, it is crucial to design a synthetic visualization to interpret and transform raw values into usable knowledge. Interactive visualization and model composition methods have been developed. (8,9) Although map-based and number-based methods are developed for sensor data visualization, the literature on sensor state visualization is limited, as far as we know. Considering the combination of numerous sensor types and sensor states, sensor state visualization must be more scalable and dynamic. Therefore, we proposed a graph-based composition symbol method that supports the dynamic conversion of the sensor state into symbols and an unlimited number of sensors.
Inspired by the layer concept of maps in GIS, the proposed composition symbol generation method is devised for the graphic composition. Two graphic layers are considered: the background layer denotes the sensor state and the overlayer describes the sensor type. The overlay of two layers represents the dynamic sensor state information. The composition symbol generating algorithm is shown in detail as Algorithm 1.

Business Requirement
The sensor device management system is a collaborative work between information experts and end users. Over the past years, we have worked together with multiple experts in both domains. Sensor state visualization is a crucial factor in extracting knowledge from sensor data. However, different people may have different preferences regarding visualization, such as the map-based or number-based methods. During the past years, we conducted several rounds of interviews and summarized the main considerations as follows.
• Real-time sensor state information mapping. Even though the number-based visualization gives details or overall information about sensor state data, such as the list or graph view, it cannot provide the geographical distribution of the sensor state. Thus, real-time sensor state mapping is a good choice for elucidating the sensor distribution from different state information. Furthermore, map visualization may also provide visualization cues for maintenance suggestions. • Designing scalable symbol for sensor extension. Facing the vast and sharply increasing number of sensor types, a higher mapping scalability is necessary. When new sensor types are added, the system must be able to support the dynamic visualization of the sensor state without manual operations. Therefore, a new map symbol with high scalability should be developed to support the dynamic registration of the sensor type. • Uploading inspection information portability. Field patrol inspection is a protective prewarning work of sensor maintenance. The maintenance tasks include checking the surrounding environment and sensor parameters such as the remaining battery power. In the traditional model, the information is submitted when inspectors return to the office, which is very late for real-time sensor state data updating. Along with the development of smart phones, the mobile app can support on-site submission as a more portable means of updating. Therefore, portability to fill inspection information requires the development of a suitable mobile app.

System Implementation
To validate and evaluate our methods described in the previous section, we developed an IoT sensor device monitoring and maintaining system named SensorMon. The system supports powerful visualization, the scalability of sensors, and portability for users. It is further important that SensorMon provides map-based and number-based visualization functions to Algorithm 1: Composition symbol generating algorithm Input: sensor dataset with properties, symbol set for the sensor type and sensor state Output: drawing of composition symbol with state visualization at the sensor position 1 For each sensor in sensor dataset do 2 Get iSensorID = sensor ID to be rendered from sensor dataset 3 Get iTypeID = sensor type ID corresponding to sensor with iSensorID 4 Get iStateID = state of sensor of iSensorID and state properties 5 # check if the symbol has been generated 6 For each symbol in composition symbol set do precisely evaluate the overall trend for a whole area with available sensor data. On the other hand, a mobile app is developed to support portable usage during patrol and inspection. As of now, this system incorporates a total of several hundred sensors of four types. The overview of this section is as follows. In Sect. 4.1, the system architecture is described. In Sect. 4.2, the visualization of the sensor state using the composition symbol is presented. In Sect. 4.3, the mobile app for field inspection is introduced.

System architecture
The system architecture is designed as a three-tier framework, as shown in Fig. 1. It includes an adapter tier, an application tier, and a presentation tier. Within this architecture, each part can be developed concurrently by different teams and programming languages. Existing applications or critical parts can be permanently or temporarily integrated and encapsulated in this architecture as components. Therefore, this architecture has high scalability and good performance. In addition to web-based application, a mobile app for cell phones was developed to increase portability. The adapter tier provides interfaces for receiving stream data, storage, and accessing the database. The implementation technologies for these interfaces are mainly web services and middleware. In accordance with the heterogeneous characteristics of numerous sensors, different functional modules are being developed corresponding to different protocols of sensors and can be encapsulated as components of middleware or web services. For the sensor data access mechanism, pull-based and push-based ones are both used in our system, depending on the sensor type. The pull-based accessing method allows the interface to request sensor data on a schedule at off-peak times, whereas the push-based one is an active method allowing devices to immediately submit sensor data to a receiving adapter at a certain time interval. (12,13) In our system, we demonstrated the feasibility of this hybrid solution in a real-world IoT deployment.
The application tier contains all the functional modules that satisfy the logic of business requirements and may also be referred to as the logic tier. These modules control an application's functionality by performing detailed processing. In our system, the main modules include storage and visualization for real-time sensor data, and query and analysis for history recorded sensor data. This tier is commonly implemented in a high-level programming language, for example, Java, adopted in our solution. The deployment of this tier may be hosted on a distributed server in a cloud environment or on an independent host server, depending on the performance requirements.
The presentation tier presents the user interface for users and is also a communication interface between the application and the users. This tier exchanges data with other tiers and then outputs the results to the users. In our solution, web-based application GUIs and a mobile app are implemented to increase portability.

Visualization of sensor state based on composition symbol
The exact numeric and geographic information about the state of sensors is crucial in evaluating the overall trend of the whole area. For example, using the interpolation concept, Otieno et al. verified the significant effect of rain gauge density on rainfall estimation. (14) Although list and graph visualizations are widely used for sensor states, there are no geographical distributions of sensors. The map-based method is a candidate for visualization because the location is clearly indicated on a map. However, how to represent the dynamic states of sensors is a more sophisticated challenge in light of the many types of sensor being used. In our system, a composition symbol solution is proposed and implemented for dynamic representation. A screenshot of the SensorMon system is shown in Fig. 2. The right panel labeled 1 shows the result of the list method [a close-up is shown in Fig. 3(a)], and the central area labeled 2, shows that of the map-based method [ Fig. 3(c)]. When the detailed information button (labeled 3 in Fig. 2) is clicked, the graph for the history sensor states was dynamically drawn [ Fig. 3(b)].
The real-time sensor state indicates the validity of the sensor; therefore, it is very important for the user to precisely evaluate the sensor value, overall trend, and geographic distribution. In this research, we differentiate the visualization into number-based, tendency-based, or mapbased geographic visualization. The real-time numeric sensor state data is symbolized with  a composition symbol using the sensor type and sensor state. Despite the numeric-based methods, such as the use of the list component, being commonly used for describing the state, it is difficult to show all sensor information when the number of sensors is large. In our system, the graph visualization approach is used to describe the trend of history sensor states, as shown in Fig. 3(b). The upper section presents the state over five days; moreover, a long-time state trend is drawn in the bottom section of Fig. 3(b).
The list and graph provide details and statistical information about sensor states, but no geographic information is considered. With the geography constrains, the distribution of sensors and the surrounding environment would be described. The map-based method using composition symbols is a good choice for solving this problem. In our system, we proposed and implemented a method using composition symbols based on combining the sensor type and state. A screenshot is shown in Fig. 3(c). There are four types of composition symbol corresponding to sensor state types, as shown by labels 1, 2, 3, and 4 in Fig. 3(c). For example, symbol 1 indicates the disabled state of the rain gauge sensor and is composed of the disabled state and rain gauge sensor type graphs. These symbols change dynamically when the real-time sensor data is pumped into the database.
Not limited to monitoring, maintenance information can be inferred from the mapbased sensor state data. For example, if many sensor states present an obvious clustering characteristic, such as low battery power, this means that all the sensors with the same product start date require a battery change.
In addition to the real-time data, the visualization of history data supports the knowledge reasoning of the sensor state. For example, the quality of sensors can be inferred from history data by the statistical approach. The most stable sensor can be identified by analyzing the history sensor states.

Inspection using mobile app
To well maintain such a large number of intelligent devices, it is necessary for such devices to be monitored and inspected by the device management department. On-site inspection is crucial for effective hardware maintenance because some uncertainty exists, particularly in a complex urban environment. However, the remote monitoring only provides numeric values without the on-site information of the surroundings of the sensor device. Therefore, a lightweight mobile app was developed, as shown in Fig. 4, to enable a portable uploading of device information.
This app provides inspection information filling and uploading for device maintenance. In addition to such necessary information, the surroundings of the sensor can be photographed as evidence for sensor diagnosis. Once the inspection information is submitted, it can be synchronized to the web system and database. Moreover, faced with difficulty in finding the exact locations of sensor devices owing to the geographical distribution and the vast number of sensors in complex environments, the proposed app can include a location-based sensor detection method to detect nearby sensors automatically. When the inspector is walking to the target destination, nearby sensors are also identified by the app in accordance with the current location of the inspector.

Conclusions
In this paper, we proposed a novel composition-based map dynamic symbolization visualization technology for monitoring the sensor state. Since there is limited literature concerning sensor state visualization, this work is a good complement to sensor information visualization in the IoT environment. Our composition-based method integrates multiplelayer graph symbols into a new dynamic symbol to represent the sensor state, thus avoiding the rendering of excessive static symbols on a map. To demonstrate the effectiveness of our method, a system named SensorMon was developed for maintaining and monitoring sensors. The results of applying SensorMon showed its ability to handle heterogeneity, its scalability, and its portability. Nevertheless, there is room for further improvement. In future works, we may put emphasis on developing novel visual clustering methods for enabling multivariate sensor symbol visualization.