Internet of things (IoT) is an emerging technology that is spreading very fast in today’s world. We can see the use of IoT in every sphere of our modern life. It is being said that the next era will be the era of IoT. Robotics is also a very popular research area in this modern world. Robots are like electronic human which has a processor instead of mind and memory instead of brain. As IoT is an Internet based internetwork between machines, it can be used to control a robot. A user-friendly interface can be introduced to build up the interaction between human and robot, through which we can easily control a robot from anywhere over HTTP connection. The idea is to build a teleoperated robot controlling interface using bash language that has low memory consumption and high processing speed. A prototype is being made and discussed in this paper to control a robot using a very cheap IoT core-Raspberry pi with clock speed of 1.2GHz and only using HTML shell scripts, CGI programs and very light HTTP server.
Internet of things (widely known as IoT) is the process of connecting physical devices-where physical devices can be sensor, smartphone, computer and those things which can hold an IP Address. Now-a-days, we use the Internet as via to communicate between human to human. But it is assumed by Tang and Wang (2010) that, the internet will become to the Internet of Things where the communication will be held between machine to machine. We can already see the application of IoT in smart home, smart office, agricultural monitoring, weather forecast, critical infrastructure management etc. An idea about these applications are described broadly by Venkatasubramanian and Gupta (2010), Welbourne and Battle (2009). So why not to communicate with a robot?A human robot interaction interface can be built by applying the vision of IoT. It will be more effective and easy to communicate with a robot from a remote area by computers or even smartphones. This kind of interaction or internetwork is named Internet of Robotic Things (IoRT). This word is fast introduced by the ABIresearch.The concept of interconnected devices was introduced by the Carnegie Mellon University in a coke machine at 1982. One of the scientists named Bill Joy realize the necessity of device to device communication as a part of his “Six Webs” framework, which have been retrieved by Pontin (2005) The concept of Internet of Things becomes popular at 1999 when Kevin Ashton (one of the founders of the original Auto- ID center) introduces Radio-frequency identification, described by Magrassi. He is the one who named the phrase Internet of Things.
As Internet of Things is a new topic in networking, a huge research is done by the researcher to evaluate the machine to machine interaction and reduce human effort in our daily life. We can easily monitor our house ecosystem with our smartphones, open our gate through RFID, monitor our heart rate using heartbeat calculating sensor and smartphone interface and else what. But a small research is done in Internet of Robot things as it is more critical to control a robot through IoT.
Chase (2013) have said in his paper that, there will be 50 billion interconnected devices within 2020 through IoT. So, we can see that not too much work and research is done in the case of robot and IoT. So, there is a lot of scope in this criterion.
The production of single board computers and development of smart embedded systems take the phrase one step further. These boards are used as IoT core. These boards are used in robot technology. These cores are ranging from 1MHz to 3GHz. The most interesting part is that; these cores are very cheap. So, it opens a new door for the smart device developers to experiment their work and make it available to people. Internet of Things and Human Robot Interaction- these two are very popular research topic in today’s world. So, if we integrate these two things in one device, it will be more compact and user friendly.
The rest of the paper is organized as follows. The basic concept and applications is discussed in section 2 followed by the system architecture in the next section. The implementation details are described in section 4 followed by the conclusions.
IoT is an internetwork between devices. So, we can use this concept to build up an interconnection between our smart phones or personal computer’s (PC) and a teleoperated robot. Teleoperated robot is a kind of a robot that can be controlled from a remote area. As robotics and IoT are the hotcakes in modern world, it will be interesting to integrate them together and build up a new and sophisticated system. So, we develop an interface through which a teleoperated robot can be controlled. The robot will have a continuous live streaming captured by a webcam. Two things should be taken care of- the interaction time should be small enough and the memory of the processor should be smaller. These things can be achieved by using CGI programs written on bash language and html shell script as scripting language. The prototype can be useful for the developer to work further in the field of Internet of robotic things. The scopes of using the prototype in various aspects are given below:
There are many more applications of robot existed in modern world. So, now it is time to make the interaction between human and robot in easier and cheaper way. Hence, everyone can have a personal assistant robot. How about a teleoperated robot with a 1.2 GHz cortex quad core processor and 1 GB of ram within 70$-80$? Therefore, we propose the following architecture in next section.
The main goal is to introduce a user-friendly robot controlling system using HTML script and CGI programs and displaying live streaming using cheap web cam. If we can make an attractive and easy to use interface to control the robot, to monitor an environment that we want to monitor, it will be very useful for us to take a step further to the modern robotics world. If we can control a robot to monitor our home or our children, even the progress of workers in an industry or factory using only the computer or smart phone which we have in front of us in our office or other remote areas, it will be very useful platform for image processing and mapping as the robot will have live streaming video. The common gateway interface (CGI) executes program that like console applications. It is a way in which user can dynamically interact with the server. A CGI program can be written in any programming language. In this proposed architecture, we use bash language. Bash is a command language. It is first released in 1989 for replacing the Bourne shell in GNU project. It is like a processor that can process commands and can execute command from a file, called a script. Hypertext transfer protocol (HTTP) is a protocol that is used by the World Wide Web. It is an application level protocol that defines the transmission of messages. It is designed to work with request-response messages under client-server communication.
There is an IoT core device mounted on the robot. The core device will work as a HTTP server. A web browser works as the client. There is a webcam connected with the core device. It runs into a specific port and gives live streaming. As depicted in Fig. 1, the thin edge is one of the edge classes that have sensors to collect data. In our case, this is robot framework with a webcam.
When the user accesses the IP address of the IoT core connected to the Internet through a browser, a request message is sent to the server and the index.html page is loaded into the browser from the web server. The html page displays the live streaming and there is a controlling interface in the webpage. When a button is pressed, the html shell script requests the correspondent CGI program to the web server. The web server then locates the CGI program and runs it. The CGI program is written on bash language which makes it quicker to send signals to the actuators. The interfaces between the PC/smartphone and IoT core is depicted in Figure 2.The IoT core is connected to a robotic chassis. It works as the controller board of the robot. The webcam is also connected to the robotic chassis. It gives the live streaming of the forward side of the robot. So, the user can easily navigate the robot.
Under the consideration of proposed architecture, we have implemented following parts:
The possible outcome is a GUI which has a controlling interface like a joystick to move the robot forward, backward, left and right in our smart devices. We can easily get access from the remote areas. The method is based on IoT where a raspberry pi is used as one end and our smart device is used at the other end.
The prototype consists of a raspberry pi 3 model B as the IoT core, a cheap webcam for capturing videos, 4 DC motors as actuators and L298 motor controller.
The raspberry pi 3 model B is a powerful credit-card size single board computer. It has Broadcom BCM2837 64bit Quad Core Processor powered Single Board Computer running at 1.2GHz and 1 GB of RAM. It has BCM43143 Wi- Fi on board and Bluetooth Low Energy (BLE) on board. There should be a question that why we are using Raspberry Pi as the IoT core? The answer is: it is the cheapest controller that can be used in robotics with a higher clock speed.
To access the gpio’s of the raspberry pi, an open source library named WiringPi is used. WiringPi is a pin based gpio access library that is written in C. It can be downloaded and installed without any costas it is an open source library.
The index.html page consists of two separate blocks- one is for live streaming and the other is for controlling purpose. The live streaming window displays the videos being captured by the webcam at port 81. The controlling blocks consist of five buttons- forward, reverse, left, right and stop. The browser view of the index.html page is given in Figure 3.
There are in total 40 pins in a Raspberry Pi in which 15 can be controlled through request. To assign the behavior of the pins, we have to install the WiringPi library. We have chosen gpio 5, 6, 13 and 19 for giving output to the motor controller. When WiringPi is installed, it will show the state of the gpio’s with their corresponding physical address.
There are five CGI programs in the IoT core and they are written in bash language for five operations. Each CGI program defines the state of the gpio pins of the raspberry pi. For example- if we set the gpio 5,6,13 and 19 to OUT the forward movement- all the gpio pins are set to 1. To send request to the web server for CGI programs, html shell scripts are used on button click option.
To have live streaming, a software, named as motion is installed in the raspberry pi. The port number in which the software gives us the streaming is set to 8081. When the motion starts in raspberry pi, it captures video through the web cam and gives output to the assigned port. In the index.html page, this streaming is shown by making the image source to the IP address of the raspberry pi.
The physical view of our teleoperated robot is given in Figure 4. We have successfully implemented our proposed system and have operated the robot chassis successfully.
The system is developed using shell script and bash language. The same prototype can be developed using Perl script.
Scripting language Size with libraries Processor usage for controlling gpio’s Shell Script Pre-installed in Linux 5% – 8% Perl Script Manually installed (approx. 20 Mb) 13% – 15%5.
In this paper, Necessities of connecting IoT and robotics are discussed. The paper introduced a prototype robot which can be controlled through HTTP protocol. The reacting time is much reduced over existing systems by using only html shell script and CGI programs. The prototype can be used in near future as a programmable robot and can do many complex tasks with its 1.2GHz processor. The working procedure of the system is described briefly.
It is not so far away when robots will be used in every aspect of our life from morning coffee to late night movie. A standard architecture is presented in the paper which can be used as a reference in this emerging new technology. In future, the prototype can be developed under HTTPS for better security and can be used as a cheap surveillance system. This prototype will take the robot controlling interface based on Internet of Things one step further. Also, the security aspects of the proposed system can be studied as a future work.
This essay has been submitted by a student. This is not an example of the work written by our professional essay writers. You can order our professional work here.