| Literature DB >> 36080895 |
Yohanes Yohanie Fridelin Panduman1, Nobuo Funabiki1, Pradini Puspitaningayu1, Minoru Kuribayashi1, Sritrusta Sukaridhoto2, Wen-Chung Kao3.
Abstract
Nowadays, rapid developments of Internet of Things (IoT) technologies have increased possibilities of realizing smart cities where collaborations and integrations of various IoT application systems are essential. However, IoT application systems have often been designed and deployed independently without considering the standards of devices, logics, and data communications. In this paper, we present the design and implementation of the IoT server platform called Smart Environmental Monitoring and Analytical in Real-Time (SEMAR) for integrating IoT application systems using standards. SEMAR offers Big Data environments with built-in functions for data aggregations, synchronizations, and classifications with machine learning. Moreover, plug-in functions can be easily implemented. Data from devices for different sensors can be accepted directly and through network connections, which will be used in real-time for user interfaces, text files, and access to other systems through Representational State Transfer Application Programming Interface (REST API) services. For evaluations of SEMAR, we implemented the platform and integrated five IoT application systems, namely, the air-conditioning guidance system, the fingerprint-based indoor localization system, the water quality monitoring system, the environment monitoring system, and the air quality monitoring system. When compared with existing research on IoT platforms, the proposed SEMAR IoT application server platform offers higher flexibility and interoperability with the functions for IoT device managements, data communications, decision making, synchronizations, and filters that can be easily integrated with external programs or IoT applications without changing the codes. The results confirm the effectiveness and efficiency of the proposal.Entities:
Keywords: Internet of Things; IoT application system; MQTT; REST API; SEMAR; sensor; server platform
Year: 2022 PMID: 36080895 PMCID: PMC9459988 DOI: 10.3390/s22176436
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.847
Figure 1Design overview of SEMAR IoT server platform.
Nomenclature used in the paper.
| Parameters | Description |
|---|---|
|
| the node of decision tree |
|
| number of targets classes |
|
| the probability of the specific data class |
|
| the class label of dataset |
|
| the learned weight |
|
| the support vector |
|
| the labeled training sample data. |
|
| the kernel function |
|
| the length scale of the kernel RBF |
|
| the Euclidean distance between |
Technology specifications for implementation of SEMAR IoT server platform.
| IoT Model | Function | Component | Description |
|---|---|---|---|
| Input | MQTT | MQTT Broker | Mosquitto v2.0.10 |
| REST API | Libraries and Framework | Tornado Web Server, PyMongo, JSON | |
| Network Interfaces | Network Interfaces Supports | Wi-Fi, Ethernet, Cellular | |
| Process | Server | Operating System | Ubuntu 18.04.5 LTS |
| Data Storage | Services | MongoDB v3.6.3 | |
| Data Aggregator | Libraries and Framework | Tornado Web Server, PyMongo, JSON, Paho | |
| Data Filter | Libraries and Framework | PyMongo, JSON, Numpy, Scipy and KalmanFilter | |
| Data Synchronization | Libraries and Framework | PyMongo, JSON, Pandas, Statistics and Threading | |
| Machine Learning and Real-time Data Classification | Libraries and Framework | sklearn, Pandas, PyMongo, JSON, and Threading | |
| Output | User Interfaces and Data Export | Programming Language | PHP, CSS, HTML and Javascript |
| REST API | Libraries and Framework | Tornado Web Server, PyMongo, | |
| Notification Functions | Libraries and Framework | PyMongo, JSON, Paho, smtplib | |
| Management | Management Services | Libraries and Framework | Tornado Web Server, PyMongo and JSON |
Figure 2Interface of data synchronization function.
Figure 3Table of sensor data.
Figure 4Graphs of sensor data.
Figure 5Data export interface.
Figure 6System overview of air quality monitoring system.
Figure 7Function flow for air quality monitoring system in platform.
Evaluation of air quality monitoring classification model.
| Features | Algorithm | Mislabel | Accuracy | MSE |
|---|---|---|---|---|
| Air Quality | Support Vector Machine | 605/10,053 | 0.94239 | 0.05761 |
| Decision Tree | 43/10,053 | 0.99591 | 0.00409 |
Experiment setup for hyper parameter optimizations in air quality monitoring.
| Component | Specification |
|---|---|
| Operating System | Windows 10 Enterprise, 64-bit |
| Processor | AMD Ryzen 5 3550H |
| RAM memory | 8.0 GB |
| Machine Learning Library | Scikit-learn [ |
| Machine Learning Method | |
| Datasets | 25,000 rows air quality data (5 labels, 5 features) |
Figure 8Confusion matrices of Decision Tree and Support Vector Machine.
Figure 9The system overview of the water monitoring system.
Figure 10Function flow for water quality monitoring system in platform.
Evaluation of water quality monitoring classification model.
| Features | Algorithm | Mislabel | Accuracy | MSE |
|---|---|---|---|---|
| Water Quality | Support Vector Machine | 289/45,397 | 0.9936 | 0.0064 |
Figure 11System overview of road condition monitoring system.
Figure 12Detected pothole example.
Figure 13Function flow for road condition detection system in platform.
Figure 14System overview of AC-Guide.
Figure 15Function flow for AC-Guide in platform.
Figure 16System overview of FILS15.4.
Figure 17Function flow for FILS15.4 in platform.
Figure 18LQI data of transmitter 1.
Figure 19Average response time for MQTT communications with different numbers of devices.
Figure 20Average CPU usage rate with different numbers of devices.
State-of-the-art comparison between the existing related studies and the proposed solution.
| Work Reference | IoT Application | Device Management | Data Synchronization | Data Filter | Decision-making assistance | Flexibility | Interoperability | Scalability | Communication Protocol |
|---|---|---|---|---|---|---|---|---|---|
| [ | Indoor Air Quality | ✓ | ✗ | ✗ | ✗ | ✓ | ✗ | ✓ | HTTP |
| [ | Smart Agriculture | ✓ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ | MQTT |
| [ | Air Pollution | ✓ | ✗ | ✗ | ✓ | ✗ | ✗ | ✓ | HTTP |
| [ | Water Management | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ | HTTP |
| [ | Water Management | ✓ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ | MQTT |
| [ | Air Pollution | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | ✓ | MQTT |
| [ | Indoor Air Quality | ✓ | ✗ | ✗ | ✓ | ✗ | ✓ | ✓ | MQTT |
| [ | Smart City | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | ✓ | HTTP & AMQP |
| [ | Smart Industry | ✓ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ | MQTT |
| [ | Smart Agriculture and Smart City | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | ✓ | MQTT |
| [ | Smart Farming | ✓ | ✗ | ✗ | ✓ | ✓ | ✓ | ✓ | MQTT |
| [ | Smart Building | ✓ | ✗ | ✗ | ✓ | ✗ | ✓ | ✓ | HTTP & Web Socket |
| [ | Smart Irrigation | ✓ | ✗ | ✗ | ✓ | ✗ | ✗ | ✓ | MQTT |
| [ | Smart Green and Smart City | ✓ | ✗ | ✗ | ✗ | ✓ | ✓ | ✓ | HTTP, MQTT, AMQP |
|
| Various IoT applications | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | HTTP & MQTT |