Software-based Fault-Tolerant Internet of Things (IoT) Multi-Sensor Device using the BEAM Virtual Machine
No Thumbnail Available
Date
2024-08-22
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Newcastle University
Abstract
The use of Internet of Things (IoT) devices in many industries, such as
healthcare, agriculture, and transportation, has led to the reliability of such devices
to become an essential requirement. It was argued that future business models would
be dependent on IoT infrastructure. This project aimed to implement fault-tolerant
IoT software using the Erlang virtual machine (BEAM) on the Raspberry Pi. The
faults addressed are software faults, stuck-at-fault, and data loss faults. The
objective was to build a multi-sensor IoT device that links the sensors to the cloud. It
was decided to use the Elixir programming language as it had better support for
external dependency and embedded systems. As for hardware, two sensors
connected to the Raspberry Pi were used. A supervision tree was implemented using
the Elixir language in Raspberry Pi, and experiments were then conducted to test the
implementation. The implementation achieved a mean time to recovery (MTTR) of
2.16 milliseconds and 296 milliseconds in publish time. Moreover, it was found that
increases in BEAM processes tend to be efficient in CPU usage due to a logarithmic
relationship. The results proved BEAM as a substantial solution for IoT to meet
digital business needs. The author is confident to recommend the BEAM as the tool
for future reliable IoT devices.
Description
Keywords
Fault detection, Fault tolerant systems, Internet of Things
Citation
IEEE