Keywords-component; WWoL, Robotics, IoT. I. INTRODUCTION. Developments in cloud computing and microcontroller- based devices lead to establishment of ...
Proceedings of the 24th International Conference on Automation & Computing, Newcastle University, Newcastle upon Tyne, UK, 6-7 September 2018 Web-based Wireless Wake-on-LAN approach for Robots
Hamza Aagela, Taha Al-Jody, Violeta Holmes Computing and Engineering University of Huddersfield Huddersfield, United Kingdom (Hamza.Aagela, Taha.Al-Jody, V.Holmes)@hud.ac.uk Abstract— The ability to wake up robots over a wireless LAN remotely can improve the power consumption performance of remote robots or cloud robotics system. This paper presents a solution for power management of a mobile robot, using web-based wireless Wake-on-LAN (WWoL). The focus in on power management of a mobile robot, but this approach is also suitable for most of the IoT mobile devices, and other systems that are designed to be used remotely. The proposed solution allows the targeted device to be powered ON and OFF remotely via a web-based dashboard. This approach was validated in a case study with an AR drone 2.0 and demonstrated substantial power optimization for the drone. In addition, security issues are explored when WWoL is deployed in remote control of mobile devices. It was established that power consumption is reduced when the drone is in a standby mode waiting for an operator to send a wake-on request message wirelessly, without compromising security posed by wireless remote access to the devices. Keywords-component; WWoL, Robotics, IoT
I. INTRODUCTION Developments in cloud computing and microcontrollerbased devices lead to establishment of the foundation of Internet of Things (IoT). Recently, the IoT automation and cloud robotics have seen growth in industry demands. Home automation usually considers remote or automatic control of devices [1]. However, the Industrial Internet of Things (IIoT) devices in industry, are somewhat different from typical home automation devices, where the devices are able to communicate with each other via a network. The potential of the IIoT, to improve productivity by introducing cyber-physical systems is vast, hence it is referred to as next industrial revolution Industry 4.0 [2]. Cloud robotics is new development utilizing cloud computing and multi-robot systems, in order to provide robotic services. Robotic services are systems, devices, and robots deploying sensors and actuators and control in a specific environment. The functionalities of stand-alone robots are limited by their inadequate on-board processing power and storage capacity, when handling large amounts of data and processing them in real-time. In cloud robotics, various equipment and devices that can sense the environment, perform various tasks and interact with people in both the physical and cyber worlds are treated the same. The limited processing and storage power are improved by integrating the robots with cloud computing systems. All these systems and technologies will have the provision of being controlled over the internet. One of the limitations of those devices is that of power management. A remote user cannot power-up the device remotely from full power-off status, because of the lack of accessibility via
communication network at the power-off state. Current technologies are relying on several protocols for communication, such as, ZigBee, Bluetooth, Wi-Fi, WiMAX. These wireless network protocols have limited capabilities or unable to power up the devices remotely. Similarly, the Wake-on-LAN WoL, use "awake" network message to turn on some compatible computers [3, 16, 17]. This paper introduces a web-based WWoL approach that can be used to manage the power of the robot remotely and securely, to improve the battery power consumption on its standby mode. This design applies the concept of WWoL way of connecting to the power system of the targeted device by using the secondary Operating System, which depends on standard network protocols such as IEEE 802.11 (Wi-Fi). This approach is following the idea of the Internet enabled switch [14] to control the power status of a mobile robot or the IoT devices by using a web application. There are some limitations of existing methods of deploying WWoL; the wireless adapter needs to be integrated with the main board of the device and there is a lack of support from most on-board adapters manufactured for WWoL. This approach only works when the device is in standby mode, therefore, the wireless client must be connected all the time and it will not work if the machines are in full power-off states. With the rapidly growth of wireless LAN technologies in recent years, there has been an increasing need for implementing wireless LANs, and WoL, in the context of the wired Ethernet LAN. As a method for implementing WWoL, a power saving mode can be deployed as stated in standards related to the international standard IEEE802.11. The power saving mode stated in IEEE802.11 is allowed in a client PC or laptop in a WoL waiting state. In this power saving mode, the client PC or laptop is in a sleep mode for a time period. [3]. The IoT is becoming a necessity for various devices, which means that many physical devices should be connected to the internet or an intranet network. As the number of devices able to connect to the internet increases, so does the risk pose to these devices from attackers [4, 13]. There a numerous reason for security violations that occur in embedded system devices such as vulnerabilities in an installed package, or mis-configuration of the system e.g. enabling root login with the default password. Cyber criminals can use different vulnerabilities, network firewall mis-configuration and even physical attacks to perform different penetration strategies and get access to the system [5]. Therefore, security issues in remote control of the robotics and IoT devices is considered in this paper in the context of designing and deploying WWoL systems.
The rest of the paper is structured as follows: Section II defines the web-based WWoL system architecture diagram and its operation, section III presents the proposed system hardware and software. The section IV covers security of web-based WWoL system. The salient features of the system are presented in Section V. Results and evaluations are shown in sections VI & VII, respectively. II. WEB-BASED WWOL The concept of the wake on wireless LAN requires the operating system (OS) on a targeted device to be active all the time or partially active (sleeping mode). Therefore, such device will consume battery power constantly. We are proposing a solution that applies the WWoL concept by using a secondary OS approach as an alternative way of connecting to the power system of the targeted device which could be, a robot, an IoT device, or any device that uses battery power. The key features of the developed system are as follows: •
Allow the device to go on complete power off state.
•
Autonomously connect to the web controller.
•
Power on/off devices over the internet.
•
Establish secure tunnel to the web controller.
•
Portable and light weight system.
•
Compatibility and integration with various devices.
The WWoL system architecture illustrated in Figure 1 shows the key components of the system. The user will get access to the targeted device via a browser and use the internet to send the signal to the Raspberry Pi zero. The Pi will activate a relay, which connects the device to its power supply, in this case a drone.
Figure 1. WWoL System architecture
The wireless connection used in this approach is Wi-Fi; nevertheless, we can use most of the supported wireless internet enable technologies as an alternative. The Raspberry Pi will act as a secondary Linux-based OS for the main system, which allows the power management of the main device, while the connection to the web service remains. III. SYSTEM SET-UP In our prototype implementation the system requires some essential set-up in both hardware and software. Thus, this section defines hardware and software configurations.
A. Hardware Set-up The system requires hardware component configuration, as shown in Figure 2. It consists of a raspberry Pi Zero W microcontroller, running a secondary OS, and 5 V DC relay. The Raspberry Pi is powered up via the additional 3.7 V battery Lipo 1500 mAh. The key reason for choosing Raspberry Pi Zero W over other available microcontrollers is its compatibility and support for most of the internet protocols and low cost. In addition, the model Raspberry Pi Zero W is wirelessenabled with an inbuilt 802.11 b/g/n wireless LAN chip and Bluetooth 4.1 LE [7]. This will allow the Pi to connect to the web applications. It is equipped with 1 GHz single core ARM11 processor and 512 MB memories. The main power supply is the micro USB power, but also could be powered up via the GPIO pins by using one of the 5V pin and ground pin [8]. Furthermore, it is a lightweight weighing just 9g [7, 15], therefore, it will not add extra weight when placed on the drone.
Figure 2. Raspberry Pi Zero W
The electronic circuit has been designed so that the relay will act as a smart switch controlling the power status of the linked device. The Raspberry Pi Zero W is connected to a relay with three wires: 5 V, Ground, and signal by using the GPIO pins on the Raspberry Pi Zero W. A device selected for case study in this paper was the Parrot AR. drone 2.0 shown in Fig. 3. This device, also referred to as an Unmanned Aircraft Vehicle (UAV) [9], is remotely controlled quad copter drone that contains a number of sub-components. It has on-board two electronic boards mounted on a plastic basket. First board is a motherboard that uses a 32bits ARM9-core called Parrot P6 processor running at 468 MHz and has additional Wi-Fi chip. The second board, a navigation board, has a 16bits PIC microcontroller running at only 40 MHz, and serves as an interface with the sensors. It also has a number of sensors. There are two cameras, a vertically-oriented camera at the bottom side of the drone and a front camera with a connector, and two Prowave ultrasonic verticallyoriented sensors. The drone is powered up with 11.1 V Lipo battery supplying 1500 mAh [10, 12, 19].
Figure 3. Parrot AR.Drone 2.0 [11]
B. Software Set-up This UAV system is managed via a web application that is hosted on a cloud virtual machine as an online server. Figure 4 shows the main page of the WWoL web application on both statuses (when the button is turned OFF and ON).
Figure 4. Dashboard of the Web Application shows states when the button is turned OFF and turned ON.
Our WWoL approach requires a web-based application that needed development on both client and server sides. The client side was developed in Python and NodeJS. The Python is used to control the power status of the DC relay (on or off). The NodeJS application is responsible for linking the Pi with the web service, which feeds the status of the Pi and the Switch every 3 seconds (the time here is optional to be defined by the user). The server side provides a web page as a dashboard that has a switch and label to demonstrate the Pi current status. As shown in Figure 5 the system initially acquires and checks the current status of the Pi (online or offline); if it is online, the system will check the status of the switch which will be reflected in the state of a switch button on the web site. Therefore, the device “Drone” status will be updated accordingly. The main reason for deploying this approach in using a Web-based Application rather than a mobile application is that the web appliances are accessible from almost any device that has a connection to the internet, with the only prerequisite being that a web browser is available. This design is system independent, therefore resolving the issue of compatibility and interoperability between devices. The layout of the front end of the web application was first coded with Hypertext Markup Language version 5 (HTML5) which is acting as a skeleton of the webpage, as well as Cascading Style Sheet (CSS) which was also used along HTML5 to help designing an easy to use modern web page. Javascript, which is a client-side scripting language, was also used in order to help with the visual design of the webpage, as well as the event handling such as sending the requests. On the backend, PHP was mainly used in order to handle the requests and to write the changes to disk. Also, the status of the Drone e.g. Flying, Grounded was being checked with PHP.
Figure 5. The Web-based WWoL algorithm
IV. SECURITY OF WEB-BASED WWOL SYSTEM For the creation of web-based WWoL system security had to be in mind during the design process of the system. There are various parameters that need to be considered for security of the systems. The system could be implemented using the following components: The first component is a backend web server which serves the web page and monitors all the changes while keeping a connection with the client (Pi). The servers have PHP installed on it with a simple but secure authentication. A short session is created to keep the connection alive for one hour. The details of the authentication are stored on a MYSQL database. The server only has File Transfer Protocol (FTP) enabled for the ease of transferring files. The second and the main part of the system is the client (Pi); it has a Debian based Linux installed with the latest security patches applied. The client has most of the network “plugins” removed so that it is only running NodeJS along with an SSH server that has a root login disabled. Only one user was created with Public Key Infrastructure (PKI) used along with a password. The user will need to login in order to make changes when needed.
The third part if the system is the connection between the server and client to avoid successful “Man in The Middle Attacks”. The connection is an HTTP Ajax Polling request with parameters. The request is tunneled through a Secure Socket Layer also known as HTTPS request, which means that if the packets are inspected and encrypted by the server only the client could decrypt them. That restricts the ability to modify or read the packets. Both the server and the client validate the data in every process of the system to make sure attacks such as MYSQL injection and HTTP parameter pollution are prevented. Finally, as a safety feature, both the client the and server check the status of the drone; if the drone is flying then the client will wait until the drone is grounded to cut off the power. V.
RESULTS
The prototype of the web-based WWoL system has been developed and tested to function with optimal results. The outcome of implementing the system is that it enables remote human operator to control the power system of the attached device, in this case the drone, by using the web application as a smart switch. Figure 6. Shows the system with the appliance (in this case, an LED of the drone) when the appliance is in the OFF state.
to quantify the power savings, which results in longer operation time of the device. We can calculate the idle operation time for the device, powered by battery, from the power consumption (Amps) and the Amps Hours for the Drone’s battery by using the data from its specification and the following equation:
The results are summarized in Table I, which shows the drone idle time (when stationary) with and without our system. It demonstrates that deployment of the proposed system outperforms the standard power system in the drone as well as giving substantial improvement of the drone running time while both systems are connected to the WiFi. The proposed system could provide a longer running time when powered by a battery, giving a minimum of 750 minutes and maximum of 1125 minutes, compared to a regular drone system, with a minimum operational time of 133.3 minutes and maximum of 171.4 minutes. TABLE I.
IDLE TIME FOR THE DRONE WITH AND WITHOUT THE WEB-BASED WWOLAN SYSTEM Drone Idle time when stationary (min) Without WWoL
Figure 6. The drone and raspberry pi zero w with the appliance turned OFF
The appliance can also be switched ON using the web application. As Fig. 7. Shows the system with the appliance (in this case, the LED of the drone) when the appliance is in the ON state.
Figure 7. The done and Raspberry Pi zero W with the appliance turned ON
A. Analysis of Power Savings The experimental results have shown the practical feasibility of Wireless Wake-on -LAN. It is also important
With WWoL
Min
133.3
Min
750
Max
171.4
Max
1125
The results show the value of using the Wireless Wakeon-LAN approach on a mobile robot, powered by battery, which normally has limited operation time running without a charger. The proposed WWoL approach would give a substantial improvement in the power optimization of the Drone in standby mode, as well as provide a remote access to the drone power system over the internet. VI. CONCLUSION This paper has reviewed the current available solution of the WWoL approaches and introduced alternative techniques that could be used by various battery operated IoT devices that consume power while in standby mode. Our approach has a number of advantages. It is easy to implement, it is relatively inexpensive, and enables a user to control wirelessly a state (ON/OFF) of remote device via the internet using web application. This system has been designed with security in mind, and it was implemented and tested using a Drone device. It was found that it functions as intended, with optimal results regarding the power consumption of the controlled device and remote control of the device. The use of the system proved its value in terms of increasing the Idle-time for the Drone in standby mode. The overall cost of this system depends on the cost of Raspberry Pi (or its alternative), the cost of the electronic circuits, built around any internet enabled microcontroller, thus eliminating the need for operating system specific applications, and hence reducing development costs.
In addition, some web hosting costs are incurred to host the web application, with multi-function dashboard that can be used to monitor and control the targeted device remotely. However, there are some limitations of the system such as that it requires access to the internet, and the second OS in a Raspberry Pi device which needs to be accessed and configured with each new Wi-Fi access point. VII. FUTURE WORK The Wireless wake-on-LAN system is suitable for applications that require access to the devices over the internet and supports longer operation and services of the devices due to a reduction in their power usage. This work is part of a larger project in designing a complex cloud robotic system that will use a web hosted dashboard and remote access to control the power status of multiple robots. In such system, a user will be able to turn ON or OFF the robots as required, based on the environment or process needs. Finally, this idea of the secondary OS, which runs on battery, can be improved with lower and smaller microcontroller that can be used only to keep the wireless chip on the device active. ACKNOWLEDGMENT The authors would like to thank the HPC Research Group at the University of Huddersfield, who provided the facility, the equipment and support in writing this paper. REFERENCES [1]
[2]
[3] [4]
[5]
[6]
Rüßmann, Michael, et al. "Industry 4.0: The future of productivity and growth in manufacturing industries." Boston Consulting Group 9 (2015). Jeschke, Sabina, et al. "Industrial internet of things and cyber manufacturing systems." Industrial Internet of Things. Springer, Cham, 2017. 3-19. Fujii, Kazuo, and Naotaka Katoh. "Wireless wake-on-LAN power management." U.S. Patent No. 7,792,066. 7 Sep. 2010. Abomhara, Mohamed. "Cyber security and the internet of things: vulnerabilities, threats, intruders and attacks." Journal of Cyber Security and Mobility 4.1 (2015): 65-88. Babar, Sachin, et al. "Proposed embedded security framework for internet of things (iot)." Wireless Communication, Vehicular Technology, Information Theory and Aerospace & Electronic Systems Technology (Wireless VITAE), 2011 2nd International Conference on. IEEE, 2011. Aagela, Hamza, Maha Al-Nesf, and Violeta Holmes. "An Asus_xtion_probased indoor MAPPING using a Raspberry Pi with
[7]
Turtlebot robot Turtlebot robot." Automation and Computing (ICAC), 2017 23rd International Conference on. IEEE, 2017. Introducing the Raspberry Pi Zero W - Raspberry Pi Spy", Raspberry Pi Spy, 2018. [Online]. Available: https://www.raspberrypi-spy.co.uk/2017/02/introducing-theraspberry-pi-zero-w/. [Accessed: 06- May- 2018]
Raspberry Pi Zero W - Raspberry Pi", Raspberry Pi, 2018. [Online]. Available: https://www.raspberrypi.org/ products/raspberry-pi-zero-w/. [Accessed: 10- May- 2018] [9] Martin, Gerard Theodore. "Modelling and control of the parrot ar. Drone." The UNSW Canberra at ADFA Journal of Undergraduate Engineering Research, Dec 2012. [10] Bristeau, Pierre-Jean, et al. "The navigation and control technology inside the ar. Drone micro uav." IFAC Proceedings, Vol. 44.1, pp.1477-1484, Jan 2011. 14771484. [8]
[11] Pleban, J. S., Band, R., & Creutzburg, R. (2014, February). Hacking and securing the AR. Drone 2.0 quadcopter: investigations for improving the security of a toy. In Mobile Devices and Multimedia: Enabling Technologies, Algorithms, and Applications 2014 (Vol. 9030, p. 90300L). International Society for Optics and Photonics. [12] "Panel EN - Edito - Parrot AR.Drone 2.0 Elite Edition", Parrot Official, 2018. [Online]. Available: https://www.parrot.com/global/Drones/parrot-arDrone-20-eliteedition#piloting-assistance-fly-like-an-expert. [Accessed: 11- May2018] [13] Suo, Hui, et al. "Security in the internet of things: a review." Computer Science and Electronics Engineering (ICCSEE), 2012 international conference on. Vol. 3. IEEE, 2012. [14] Reddy, Vishwateja Mudiam, et al. "Internet of things enabled smart switch." Wireless and Optical Communications Networks (WOCN), 2016 Thirteenth International Conference on. IEEE, 2016. [15] Abaya, W. F., Basa, J., Sy, M., Abad, A. C., & Dadios, E. P. (2014, November). Low cost smart security camera with night vision capability using Raspberry Pi and OpenCV. In Humanoid, nanotechnology, information technology, communication and control, environment and management (HNICEM), 2014 international conference on (pp. 1-6). IEEE. [16] McCormick, D. K. (2017). IEEE technology report on wake-up radio: an application, market, and technology impact analysis of low-power/low-latency 802.11 wireless LAN interfaces. [17] Mishra, P., & Goel, S. (2016). U.S. Patent No. 9,351,247. Washington, DC: U.S. Patent and Trademark Office. [18] Tang, S., Zhang, C., Yomo, H., & Obana, S. (2016, September). Energy and spectrum efficient wireless LAN by tightly integrating low-power wake-up radio. In Personal, Indoor, and Mobile Radio Communications (PIMRC), 2016 IEEE 27th Annual International Symposium on (pp. 1-6). IEEE. [19] Saha, S., & Wadoo, S. (2017, November). Linear optimal control of a parrot AR Drone 2.0. In Undergraduate Research Technology Conference (URTC), 2017 IEEE MIT (pp. 1-5). IEEE.