1. Introduction
It is a widespread belief that the Internet of Things (IoT) is an emerging technology that has the power to change our future. The promise of this technology also makes it one of the most active fields of research, covering all its aspects of performance. It is in this context that the work presented here takes place and whose objective is to improve the communications within IoT networks. In our view, the device and communications part of an IoT system is a direct descendant of Wireless Sensor Networks (WSNs) [
1,
2], in the sense that it is about networked, resource-constrained systems mainly focusing on low-power wireless devices. As such, many IoT networks exhibit unique characteristics but also come with some important limitations, such as energy, memory and computational power. Energy [
3] is a limitation of great importance for the lifetime of wireless nodes, and, as a consequence, the whole network depends on it. The energy limitations restrict nodes’ memory and computational power.
Due to the increase in traffic demand in IoT applications, many problems arise in the network [
4]. The hop-by-hop communication method from the nodes to the gateway (or sink) and the limited energy power are the main reasons for the problems. As a result, the network may suffer from energy holes or hotspots, which result in congestion and/or network partitioning. An approach for solving these problems is the use of mobile elements in the network.
Mobile elements are able to change their position in the network. Algorithms that use mobile elements normally employ two distinct tactics. The employment of mobile sink(s) or mobile nodes [
5]. Mobile sinks have the ability to move around the network and collect data from nodes on the spot. The mobile sink approach mitigates the problem of network disconnection due to energy consumption. On the other hand, the employment of mobile nodes, with similar characteristics as of static nodes, assist existing nodes in performing their tasks, either by replacing energy exhausted or damaged nodes or by creating alternative paths to the sink(s). Algorithms that base their operation on mobile nodes, improve the lifetime of the network [
6]. Therefore, algorithms that use mobile nodes need to take into consideration the power consumption model in use [
7].
The Node Placement Algorithm retains the basic principles of MobileCC and reacts upon the occurrence of congestion. It resolves the problem by efficiently and effectively relocating mobile nodes. The main idea is that the Alternative Path Creation mechanism starts when existing congestion control algorithms fail. The algorithm consists of two variations: a dynamic node placement algorithm that solves the problem locally and a direct node placement algorithm that creates a new direct path to the sink, which consists only of mobile nodes.
The extended version of the Node Placement Algorithm, called the Energy Node Placement Algorithm, reuses the mobile relay nodes already in use in the network for resolving congestion, network disconnection, energy holes, or security attack problems occurring in the network. The basic idea of placing mobile nodes in the network to mitigate the problem to be solved is retained, and the focus is set on the energy consumption of the active mobile nodes in the network. Considering the energy levels of a mobile node can be useful in re-using it in a different area of the network or in replacing it on time before causing a new problem in the network.
A preliminary version of the Node Placement Algorithm is presented in [
8], while a preliminary version of the Energy Node Placement Algorithm appeared in [
9]. The current work extends the discussion and findings of these previous research works and evaluates them against multiple energy models inspired by different types of mobile robots. It presents a theoretical analysis of the algorithms, as well as a comparison of the energy models.
WSNs are descendants of the new emerging technology of the Internet of Things (IoT) [
10]. An IoT-enabled WSN [
1] is defined as the WSN in an IoT-based system. Each sensor node is defined as an IoT-enabled sensor node that can monitor the environment and collect real-time data. An IoT-enabled WSN consists of an end-user connected to the Internet, which is also connected to an access point. The access point is represented by the base station of the WSN where all sensor nodes are connected to. In this respect, the algorithmic mechanisms proposed in our paper can be directly applied to IoT-enabled WSNs.
The contributions of the current work are the following: (a) we are the first to propose a solution that utilizes mobile nodes as alternative paths in order to unload the flows of the affected area in the network, (b) introduce a time-efficient solution for decreasing the correspondence time upon detecting a network problem, (c) consider the energy consumption of the mobile node prolonging its lifetime, and (d) evaluate different energy models of the mobile node to determine the most striving energy factor.
The paper is organized as follows. In
Section 2, we present related work. In
Section 3, we provide an overview of the MobileCC Framework, of which our proposed algorithms are part of. Then, in
Section 4, we present the Node Placement algorithm, with its two variations, Dynamic (
Section 4.1) and Direct Path (
Section 4.2), and in
Section 5, we present an energy-efficient extension of the Dynamic variation of the Node Placement algorithm, called the Energy Node Placement algorithm. In
Section 6, the evaluation of the proposed algorithms is presented. The evaluation is divided into three parts. In the first part, the Node Placement algorithm, including both variations, is compared with a congestion control algorithm (
Section 6.3.1). In the second and third parts, the Energy Node Placement algorithm is evaluated in different reuse scenarios (
Section 6.3.2) and under different energy consumption models (
Section 6.3.3), respectively. We conclude with a discussion in
Section 7.
5. The Energy Node Placement Algorithm
The previous algorithm stops when the mobile node is placed in the needed position and becomes active. However, at some point, the current problem may be resolved, and the mobile node may no longer be needed. For this reason, we extended the previously mentioned algorithm (the Dynamic variation) in order to reuse the mobile nodes that are placed in the network. We call this extension Energy Node Placement algorithm (eNPA), and we refer to it as Dynamic MobileCC+. In this respect, we introduce energy considerations. Based on the energy levels of the mobile nodes, they can be either be reused or be replaced; in the latter, the mobile node returns to its initial position (near the sink) to recharge its battery.
When a new problem occurs in the network, there is a need to use a mobile node to resolve it. The introduction of reuse provides the opportunity to first check among the in-use mobile nodes, that is, the mobile nodes that are already placed in the network, whether one of them is available to be used. The following conditions must be applied to reuse an in-use mobile node:
- 1.
The current problem for which the mobile node was sent to resolve has now been resolved, or the neighbor nodes of the mobile node can now find an alternative path.
- 2.
The energy level of the mobile node does not exceed a certain threshold, which enables the mobile node to travel from its current position to the new position, and then from there to its initial position (near the sink) without running out of energy.
We now present the actions of each node type: Mobile node, Sink node, and node (a static node or an in-use node acting as a relay). In
Appendix A.3 you can find the flowchart of this algorithm.
5.2. Sink Node
In Dynamic MobileCC, the sink node was only responsible for assigning an idle mobile node (of those waiting near the sink) for each problem occurrence in the network. In our extended version, the sink node may choose either an idle mobile node that resides at the sink (
) or one that is already placed in the network for a previous problem (
), if one exists. Algorithm 6 describes the tasks of the sink node.
Algorithm 6 Algorithm for sink node |
- 1:
functionsend_mnode() - 2:
if then - 3:
choose - 4:
send(NewPosition) to - 5:
else - 6:
= distance(sink_pos, new_pos) - 7:
= distance(,new_pos) - 8:
if then - 9:
choose - 10:
else - 11:
- 12:
end if - 13:
send(NewPosition) to - 14:
end if - 15:
end function - 16:
upon receive (“problem_notification”) from then - 17:
new_pos = DynamicMobileCCAlgorithm() - 18:
call send_mnode(new_pos) - 19:
upon receive (“ShouldBeReplaced”) from then - 20:
- 21:
call send_mnode(current position of ) - 22:
upon receive (“ComingBack”) from then - 23:
ifthen - 24:
remove from idleMList - 25:
end if - 26:
= - 27:
- 28:
upon receive (“BecomeIdle”) from then - 29:
- 30:
add
|
The selection of which mobile node to send is made on the closest distance to the calculated position. Initially, the sink defines the closest idle mobile node () based on its distance (). Then, is compared to the distance of a near sink mobile node (). The mobile node with the smallest distance is sent to the calculated position (see Algorithm 6, lines 1–15).
Another task of the sink node is to replace an in-use mobile node in the case of an energy emergency. When a mobile node informs the sink about the need of replacement, the sink node assigns the position to a new idle mobile node by choosing the closest idle mobile node in the network (see Algorithm 7, lines 19–21). Additionally, the sink node needs to keep track of the current status of the in-used mobile nodes. In this respect, notification messages received by the mobile nodes must be processed by the sink node. When a mobile node is about to return to its initial position, the sink node is informed in order to change its availability (), its position, and, if necessary, remove it from the idle list (see Algorithm 7, lines 22–27). When a mobile node is not needed and becomes idle at its current position, the sink node is informed and changes the status of the mobile node, and it is added to the idle list (see Algorithm 7, lines 28–30).
We proceed to a simple analysis of the sink node algorithm, depending on whether there is reuse or not. Specifically, when a new problem occurs in the network, the computational delay (defined below) for the whole process is divided into two cases based on the scenario used, the no reuse scenario and the reuse scenario.
No Reuse Scenario(Figure 3a): The notification information is sent (link a) from node “N” to the sink “S” and then a
moving notification is sent (link b) from “S” to a near-sink mobile node “MN”. “MN” moves (link c) to its new position “X”.
Reuse Scenario(Figure 3b): The notification information is sent (link a) from node “N” to the sink “S” and then a
reuse notification is sent (link b) from “S” to an in-used mobile node “MN” in the network. “MN” moves (link c) from its current position in the network to its new position “X”.
As a result, we can define the total computational delay or delay for short, as the sum of the communication delay (links a and b) and the moving delay (link c), i.e.,
The is calculated as , where r is the rate of the packet per hop and is the distance in hops, from the problematic area (N) to the sink (S) and from the sink to the mobile node (MN). For the no reuse case, in the worst case, , where D is the diameter of the network (and b is almost zero), whereas, for the reuse case, in the worst case, ; however, the closer the in-use mobile node is to the problematic area, the smaller the moving delay will be.
The
is calculated as
, where
is the speed of the mobile node and
is the distance the mobile node must move from its current position to its new position. As the algorithm attempts to find the mobile node that is closer to the position to be moved (X), which could be a mobile node at the sink or an in-use mobile node and given that in general, the moving delay is longer than the communication delay (unless an auxiliary device is used to move the mobile node, e.g., a drone), the algorithm using reuse can significantly reduce the moving delay, and hence the total delay (cf.
Section 6.3.2).
5.4. Energy Models
The total energy consumption, measured in
, is calculated during the operation of the network, with the following equation:
To measure the energy consumption of the network, we calculate the energy (
) consumed by each node
i, as shown in the equation below. The general energy model used for our nodes in the network is divided into two parts. The first one is for listening and the other for moving.
where
is the energy computational usage and
is the energy usage for moving. If node
i is static, then
.
Following [
23], we compute
as:
where
is the total time of the radio transmitting,
is the total time of the radio listening,
is the total time of the CPU being active, and
is the total time of the CPU being in low power mode.
In this work, we focus on the energy consumption of nodes used for moving. The mobile nodes need to use their energy as efficiently as possible in order not to waste too much energy while moving, and hence preserve more time for their operational time. We will present three different moving energy models from the literature, each being used by a different mobile robot. In the evaluation section (
Section 6.3.3), we compare these different energy models in conjunction with our algorithm.
5.4.1. Moving Energy Model 1
In [
24], Zorbas et al. model the power consumption of a specific mobile robot. This work presents a model created by experimental results based on different speed and acceleration levels.
The mobile robot used for this work is a Wifibot [
25]. This mobile robot consists of a controllable four-wheel drive chassis, infrared sensor, a web camera, a WiFi adapter, a core, and an embedded system that can be one of the following systems: Linux Ubuntu, NVIDIA, or Raspberry PI, as well as a free WiFi access point. The embedded system of the robot refers to the motherboard where all peripherals are connected to. In order to reduce power consumption, a low consumption power unit and a flash disk are used. A serial port is used for the communication between the embedded computer and the motor board. The role of the motor board is to play the microcontroller and the power regulator. The motor board connects to the power supply, where the power is distributed to the microcontroller and the other components of the robot.
The experiment setup included a mobile robot (Wifibot), a power analyzer that was connected to the robot, a monitor, and a keyboard. The keyboard was used for the commands and the monitor for displaying the outputs. All experiments took place on a flat surface of a clean non-slippery parquet-style floor, where the robot was protected from spinning or slipping. The models built use different speed and acceleration levels, and the experimental results show the relations between the energy and the speed, as well as the distance.
A mobile robot’s power consumption is the sum of the power consumed by the motors and the embedded devices. The former represents the mechanical power that is used for accelerating and maintaining a constant speed.
The total energy equation is given below:
where
represents the power consumption of the embedded devices,
represents the power loss of the transformation from electrical to mechanical energy, and
represents the mechanical power and is given by:
, where
u is the robot’s speed,
m is its mass,
is the ground friction constant, and
g is the acceleration of gravity.
The idea of moving is that the mobile robot starts from its initial position and accelerates until it reaches its maximum speed, where it continues with a constant speed.
This work divided the recorded power of the mobile robot into two parts: (a) the acceleration power and (b) the power while maintaining a constant speed. Based on this, the total moving energy consumption is calculated with the following equation.
where
is the power of acceleration at a given speed
u,
s is the total traveling distance,
is the distance traveled during acceleration,
is the acceleration time, and
u the speed of the robot.
The results show that the energy cost increases up to 66% when the robot stops frequently due to accelerations. Additionally, at higher speeds, the robot achieved high energy efficiency. Although all results are based on a specific mobile robot, the main conclusion is that acceleration is an action that consumes a high amount of energy, which results in decreasing the operation time of the mobile robot.
5.4.3. Moving Energy Model 3
Many research works on energy models focus on differential drive mobile robots. This type of robot uses a drive mechanism called differential drive. This mechanism consists of two independently actuated drive wheels that are mounted on a common axis. However, each wheel is able to be driven independently, either forward or backward. In order to perform a rolling motion the robot needs to vary the velocity of each wheel but at the same time rotate a point on the common wheel axis.
We present two works that focus on different mobile robots, namely the P3-DX robot [
28] and the Nomad Super Scout robot [
29], respectively; these are popular mobile robots in the research community of energy consumption models. P3-DX is a mobile robot with two wheels driven by two DC motors and powered by a rechargeable battery. Nomad Super Scout robot is a two-wheel differential robot that has an embedded robot controller to control the motion commands and lower-level motors.
In [
28], Wahab et al. start by investigating various energy loss components of the differential drive robots and then present an energy model based on their findings. The experiments were performed with a robot that has four wheels, two that are driven from the DC motors and two that act as casters. The energy model is validated by moving the mobile robot with a specific velocity profile, where all losses have been measured and analyzed.
In [
29], Morales et al. propose a power model for a two-wheel differential drive mobile robot. The model presented considers the dynamic parameters of the robot, as well as the motors, and it is able to predict the consumption of the robot’s energy for trajectories using variable accelerations and payloads. The experimentation was done with the use of a Nomad Super Scout II mobile robot for straight and curved trajectories. The results show that the accuracies of the energy consumption for straight trajectories are 96.67% and for curved trajectories are 81.25%.
Based on all of the above work, the following results have been obtained.
The overall energy model is given by the equation below after the analysis of all loss components.
Each energy used in the overall energy model formula given above is further explained below.
represents the energy produced by the DC motors of the robot. The DC motors are attached to the robot’s wheels and are responsible for converting the electrical energy to mechanical energy. The conversation depends on the losses that occur, such as armature resistance loss, windage loss, and stray loss. As a result, the energy consumption of the DC motors is given by the sum of the armature energy and the energy of other losses that occur. The armature loss energy (
) represents the consumed energy of the armature currents and resistances of the left and right DC motors of the robot. The energy of other losses (
) represents the energy of all other losses, such as friction, windage, and stray. It is worth mentioning that the energy of other losses can be disregardedm as shown by the experimental work of the authors. The equation is given below:
represents the energy loss where the output power is used in order to increase the kinetic energy and the acceleration of the robot. However, during the deceleration phase, the kinetic energy will be transformed back but, due to heating, a part of it will be lost. As a result, the kinetic energy consumption uses the linear (
) and angular (
) velocities of the robot, its mass (
m), and the robot’s moment of inertia (
I). The equation is given below:
where
u is the linear velocity of the robot and is given by
,
w is the rotational velocity of the robot and is given by
, where
r is the ratio of the robot’s wheel and
b is the axle length.
represents the losses due to friction. The wheels of the robot face friction due to the cause of slight deformation of the ground or the wheel at the point of contact and can be primarily the rolling friction or rolling resistance. The equation is given below:
where
is the total power lost against friction and is given by
, such that
and
are the power lost against friction for the right and left motor of the robot and are given by
and
.
represents the losses in the electronics of the robot. A robot system includes DC motor drivers, sensors, and micro-controllers that make up the electronics of the robot. These components are also consuming part of the battery’s energy. The equation is given below:
Author Contributions
Conceptualization, N.T., C.S., C.I., C.G. and V.V.; methodology, N.T., C.S., C.I., C.G. and V.V.; software, N.T.; validation, N.T., C.S., C.I., C.G. and V.V.; formal analysis, N.T., C.S., C.I., C.G. and V.V.; writing—original draft preparation, N.T.; writing—review and editing, N.T., C.S., C.I., C.G. and V.V.; visualization, N.T., C.S., C.I., C.G. and V.V.; supervision, C.G and V.V. All authors have read and agreed to the published version of the manuscript.
Funding
This project has received funding from the European Union’s Horizon 2020 Research and Innovation Programme under Grant Agreement No 739578 and the Government of the Republic of Cyprus through the Deputy Ministry of Research, Innovation and Digital Policy, and the University of Cyprus under the Internal Projects “SMIDS: Detecting Malicious Interventions in Wireless Sensor Networks and the Internet of Things” and the ONISILOS Grant Project “IDS4IoT: Computational and Artificial Intelligence Solutions for Intrusion Detection in Internet of Things”.
Institutional Review Board Statement
Not Applicable.
Informed Consent Statement
Not Applicable.
Data Availability Statement
Not Applicable.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Agarwal, V.; Tapaswi, S.; Chanak, P. A Survey on Path Planning Techniques for Mobile Sink in IoT-Enabled Wireless Sensor Networks. Wirel. Pers. Commun. 2021, 119, 211–238. [Google Scholar] [CrossRef]
- Gulati, K.; Boddu, R.S.K.; Kapila, D.; Bangare, S.L.; Chandnani, N.; Saravanan, G. A review paper on wireless sensor network techniques in Internet of Things (IoT). Mater. Today Proc. 2021. [Google Scholar] [CrossRef]
- Srivastava, H.K.; Dwivedi, R.K. Energy Efficiency in Sensor Based IoT using Mobile Agents: A Review. In Proceedings of the 2020 International Conference on Power Electronics & IoT Applications in Renewable Energy and its Control (PARC), Mathura, India, 28–29 February 2020; pp. 314–319. [Google Scholar]
- Kandris, D.; Nakas, C.; Vomvas, D.; Koulouras, G. Applications of wireless sensor networks: An up-to-date survey. Appl. Syst. Innov. 2020, 3, 14. [Google Scholar] [CrossRef] [Green Version]
- Temene, N.; Sergiou, C.; Georgiou, C.; Vassiliou, V. A survey on mobility in Wireless Sensor Networks. Ad Hoc Netw. 2022, 125, 102726. [Google Scholar] [CrossRef]
- Koutroullos, M.; Sergiou, C.; Vassiliou, V. Mobile-CC: Introducing Mobility to WSNs for Congestion Mitigation in Heavily Congested Areas. In Proceedings of the 2011 18th International Conference on Telecommunications (ICT), Ayia Napa, Cyprus, 8–11 May 2011; pp. 400–405. [Google Scholar] [CrossRef]
- Gopika, D.; Panjanathan, R. Energy efficient routing protocols for WSN based IoT applications: A review. Mater. Today Proc. 2020. [Google Scholar] [CrossRef]
- Nicolaou, A.; Temene, N.; Sergiou, C.; Georgiou, C.; Vassiliou, V. Utilizing Mobile Nodes for Congestion Control in Wireless Sensor Networks. In Proceedings of the 15th International Conference on Distributed Computing in Sensor Systems, Santorini, Greece, 29–31 May 2019; pp. 176–178. [Google Scholar] [CrossRef] [Green Version]
- Temene, N.; Sergiou, C.; Ioannou, C.; Georgiou, C.; Vassiliou, V. Energy Efficient Mechanism for Reusing Mobile Nodes in WSN and IoT Networks. In Proceedings of the 17th International Conference on Distributed Computing in Sensor Systems, Pafos, Cyprus, 14–16 July 2021; pp. 287–294. [Google Scholar] [CrossRef]
- Ioannou, C.; Vassiliou, V. An Intrusion Detection System for Constrained WSN and IoT Nodes Based on Binary Logistic Regression. In Proceedings of the 21st ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems, Montreal, QC, Canada, 28 October–2 November 2018; pp. 259–263. [Google Scholar] [CrossRef]
- Pang, A.; Chao, F.; Zhou, H.; Zhang, J. The Method of Data Collection Based on Multiple Mobile Nodes for Wireless Sensor Network. IEEE Access 2020, 8, 14704–14713. [Google Scholar] [CrossRef]
- Zhang, J.; Yan, R. Centralized Energy-Efficient Clustering Routing Protocol for Mobile Nodes in Wireless Sensor Networks. IEEE Commun. Lett. 2019, 23, 1215–1218. [Google Scholar] [CrossRef]
- Heinzelman, W.B.; Chandrakasan, A.P.; Balakrishnan, H. An application-specific protocol architecture for wireless microsensor networks. IEEE Trans. Wirel. Commun. 2002, 1, 660–670. [Google Scholar] [CrossRef] [Green Version]
- Kim, D.; Chung, Y. Self-Organization Routing Protocol Supporting Mobile Nodes for Wireless Sensor Network. In Proceedings of the Interdisciplinary and Multidisciplinary Research in Computer Science, IEEE CS Proceeding of the First International Multi-Symposium of Computer and Computational Sciences, Hangzhou, China, 20–24 June 2006; pp. 622–626. [Google Scholar] [CrossRef]
- Awwad, S.A.B.; Kyun, N.C.; Noordin, N.K.; Rasid, M.F.A. Cluster Based Routing Protocol for Mobile Nodes in Wireless Sensor Network. Wirel. Pers. Commun. 2011, 61, 251–281. [Google Scholar] [CrossRef]
- Deng, S.; Li, J.; Shen, L. Mobility-based clustering protocol for wireless sensor networks with mobile nodes. IET Wirel. Sens. Syst. 2011, 1, 39–47. [Google Scholar] [CrossRef]
- Lee, J.; Teng, C. An Enhanced Hierarchical Clustering Approach for Mobile Sensor Networks Using Fuzzy Inference Systems. IEEE Internet Things J. 2017, 4, 1095–1103. [Google Scholar] [CrossRef]
- Sergiou, C.; Antoniou, P.; Vassiliou, V. A Comprehensive Survey of Congestion Control Protocols in Wireless Sensor Networks. IEEE Commun. Surv. Tutor. 2014, 16, 1839–1859. [Google Scholar] [CrossRef]
- Muhammed, T.; Shaikh, R.A. An analysis of fault detection strategies in wireless sensor networks. J. Netw. Comput. Appl. 2017, 78, 267–287. [Google Scholar] [CrossRef]
- Takagi, H.; Kleinrock, L. Optimal Transmission Ranges for Randomly Distributed Packet Radio Terminals. IEEE Trans. Commun. 1984, 32, 246–257. [Google Scholar] [CrossRef] [Green Version]
- Hou, T.; Li, V. Transmission Range Control in Multihop Packet Radio Networks. IEEE Trans. Commun. 1986, 34, 38–44. [Google Scholar] [CrossRef]
- Knuth, D. The Art of Computer Programming: Generating All Combinations and Partitions (Vol. 4, Fascicle 3); Addison-Wesley: Boston, MA, USA, 2005. [Google Scholar]
- Raza, S.; Wallgren, L.; Voigt, T. SVELTE: Real-time intrusion detection in the Internet of Things. Ad Hoc Netw. 2013, 11, 2661–2674. [Google Scholar] [CrossRef]
- Zorbas, D.; Razafindralambo, T. Modeling the power consumption of a Wifibot and studying the role of communication cost in operation time. arXiv 2015, arXiv:1512.04380. [Google Scholar]
- Payá, L.; Gil, A.; Reinoso, O.; Juliá, M.; Riera, L.; Jiménez, L. Distributed platform for the control of the WiFiBot robot through Internet. IFAC Proc. Vol. 2006, 39, 59–64. [Google Scholar] [CrossRef] [Green Version]
- Hou, L.; Zhang, L.; Kim, J. Energy modeling and power measurement for mobile robots. Energies 2019, 12, 27. [Google Scholar] [CrossRef] [Green Version]
- Doroftei, I.; Grosu, V.; Spinu, V. Design and control of an omni-directional mobile robot. In Novel Algorithms and Techniques in Telecommunications, Automation and Industrial Electronics; Springer: Berlin/Heidelberg, Germany, 2008; pp. 105–110. [Google Scholar]
- Wahab, M.; Rios-Gutierrez, F.; El Shahat, A. Energy Modeling of Differential Drive Robots; IEEE: Piscataway, NJ, USA, 2015. [Google Scholar]
- Jaramillo-Morales, M.F.; Dogru, S.; Gomez-Mendoza, J.B.; Marques, L. Energy estimation for differential drive mobile robots on straight and rotational trajectories. Int. J. Adv. Robot. Syst. 2020, 17, 1729881420909654. [Google Scholar] [CrossRef] [Green Version]
- Contiki: The Open Source OS for the Internet of Things. Available online: http://www.contiki-os.org/ (accessed on 30 November 2021).
- Sergiou, C.; Vassiliou, V.; Paphitis, A. Congestion control in wireless sensor networks through dynamic alternative path selection. Comput. Netw. 2014, 75, 226–238. [Google Scholar] [CrossRef]
- Sergiou, C.; Vassiliou, V. Estimating Maximum Traffic Volume in Wireless Sensor Networks Using Fluid Dynamics Principles. IEEE Commun. Lett. 2013, 17, 257–260. [Google Scholar] [CrossRef]
- Madhja, A.; Nikoletseas, S.E.; Raptis, T.P. Hierarchical, collaborative wireless energy transfer in sensor networks with multiple Mobile Chargers. Comput. Netw. 2016, 97, 98–112. [Google Scholar] [CrossRef]
- Nikoletseas, S.E.; Raptis, T.P.; Raptopoulos, C.L. Wireless charging for weighted energy balance in populations of mobile peers. Ad Hoc Netw. 2017, 60, 1–10. [Google Scholar] [CrossRef]
- Ioannou, C.; Vassiliou, V.; Sergiou, C. An Intrusion Detection System for Wireless Sensor Networks. In Proceedings of the 24th International Conference on Telecommunications, Limassol, Cyprus, 3–5 May 2017; pp. 1–5. [Google Scholar] [CrossRef]
- Sheth, H.; Jani, R. Fault tolerance and detection in wireless sensor networks. In Data Science and Intelligent Applications; Springer: Berlin/Heidelberg, Germany, 2021; pp. 431–437. [Google Scholar]
| Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).