A Development of Low-Cost Wi-Fi Robot for Teaching Aids

— A low-cost Wi-Fi robot as a teaching equipment is developed. The robot can be used to teach students in the subjects related to robotics system and internet of things (IoT). A Wi-Fi robot is a robot equipped with a Wi-Fi communication system for connecting to the internet. Integrating the robot with an IoT platform makes the robot able to communicate with other devices. The developed Wi-Fi robot in this study is a three-wheeled robot type. A NodeMCU ESP-12, which is a microcontroller equipped with Wi-Fi module, is applied in the robot. The robot is connected to the Blynk IoT platform and paired to a smartphone. It results in communication between the robot and the smartphone through the internet. The communication is demonstrated by remotely operating the robot using the smartphone. Mechanical structure and electronic wiring of the robot are simple such that the robot is easily built. Moreover, the cost of required components for building the robot is quite cheap as less than USD 20


INTRODUCTION
Robotic is a multi-disciplines engineering field involving mechanical systems, electrical systems, and control systems.Robots as the robotic products are applied broadly in human life.The robots can be easily found in human activities, for example, the manufacturing industry, medical, and agriculture.The robots applied in the industrial process are known as industrial robots.Arms robots are the most common industrial robots.The industrial robots are applied to replace laborers working for heavy-load or in the hazard area, for example, assembling and welding processes in the automotive industry.A massive application of industrial robots was stimulating the third industrial revolution in the 1960.Technology in robotics has been rapidly growing since the last three decades, including hardware and software [1]- [6].It is supported by the advanced technology in other fields, for example: communications, computer, and electronics.
Technology in the communication system is rapidly growing due to the internet [7,8].Internet connection speed has been dramatically increasing since the last two decades as mentioned in [9,10].Internet speed was about 55 Kbit/s in households and less than 2 Mbit/s in the professional company in 2000.In 2004, the internet speed in an urban area was in the range of 2 to 16 Mbit/s in 2004.Recently, the internet speed in residences reaches 100 Mbit/s and beyond.The high rate of internet connection expands the application of data transfer through the internet.The internet becomes the backbone of a real-time data communication system.The internet becomes an essential tool in human life such that everything has a dependency to the internet.Kevin Ashton introduced the term internet of things (IoT) in 1999 for describing internet dependency [11].The IoT means a system connecting everything to internet including human being, computers and things [12].
The high internet speed is an excellent asset in robot development.A robot can be connected to a communications network such as the internet or local area network [13].Such kind of robot is known as the networked robot.The networked robot could have a 61 Jurnal Infotel Vol.12 No.2 May 2020 https://doi.org/10.20895/infotel.v12i2.471wired or wireless communication system.The networked robot can be implemented as a teleoperated robot where the operator and robot communicate through the network.An early study of the teleoperating robot was reported in 2003 [14].The study was found a problem of significant delay in communication between the operator and robot due to the slow internet speed.Now, the delay problem is already solved by fast internet speed.The networked robot is becoming an interesting research topic in advanced robotics [3]- [6].
The advanced electronics technology has resulted in a lot of electronics components.The components are not only having high performance but also available at a low price.Arduino, Raspberry Pi, and NodeMCU are the most common small cost development boards for developing IoT systems [15,16].The development boards are applicable in developing a low-cost networked robot, and the examples are presented in the following several studies [17][18][19][20][21][22][23].
A mobile robot controlled through Wi-Fi networks was presented in [17].The robot was a three-wheeled robot and equipped with NodeMCU ESP-12.The robot is operated using a personal computer (PC) through the Wi-Fi connection.A study on developing Wi-Fi robot with an obstacle avoidance capability was developed in [18].The robot was equipped with Arduino Uno and ESP8266 Wi-Fi to be connected to the network.The robot is operated using a smartphone through the Wi-Fi communication system.A remotely controlled robot via Wi-Fi connection was presented in [19].A Raspberry Pi 3B is applied in the robot.The robot is remotely operated using a PC that communicates to the Raspberry Pi through the internet networks.The robot is equipped with a camera to record images and videos and send the recorded data to the PC.An ultrasonic is used in the robot to avoid an object collision.A teleoperated robot controlled using an Android mobile device was presented in [20].Communication between the robot and mobile device was done through Bluetooth and Wi-Fi.A face recognition based robot operation was demonstrated in the robot.A camera was installed on the robot, and the image was transferred to the mobile device.The mobile device performed a face recognition process of the picture to decide whether the picture was a verified user or not.A study on the networked robot was also presented by developing a spy robot [21].The robot was a Wi-Fi mobile robot controlled using a mobile phone.The robot was equipped with a camera and able to live-stream the video to smartphone via the Wi-Fi communication.Another spy robot using an android application was presented in [22].The robot was equipped with a night vision wireless camera.A networked robot for solving an industrial problem is developed.A Wi-Fi robot for detecting an internal fault of oil-immersed power transmitted was presented in [23].The robot was purposed to overcome high workload and impurity in detecting the internal fault of the oil-immersed power transformer.The Control system of the robot was built using Raspberry Pi 3. The robot was able to move flexibly inside the transformer and communicate to the control station.
It was shown that the internet infrastructure contributes to robotics, especially on networked robot development.As the networked robot is one of the future robotics technologies, robotics education should be directed on it.Learning the networked robot will be more easily done through practical experience of building the robot.However, such kind of educational kit for learning the networked robot is not easily found in market at an affordable price.This paper presents the development of the low-cost networked robot for educational purpose.The robot is connected to an internet network through a Wi-Fi communication and integrated into an IoT cloud platform.The robot is controlled using a smartphone by accessing the IoT cloud platform.The robot development is done by design and constructing the robot, including hardware and software.The presentation of the paper is organized as follows.Section 2 describes the robot design.It generally describes how the robot works and the main parts of the robot.Section 3 presents the construction of the robot.The resulted robot and discussion are presented in Section 4. Finally, the conclusion of the work is given in Section 5.

II. RESEARCH METHOD
A Wi-Fi robot is developed in this study.The Wi-Fi robot is a robot connected to an internet network using a wireless internet communication system.The communication system allows the operator and the robot to interact through the interface remotely.The operator can remotely control the robot through internet networks.It gives more flexibility in operating and monitoring the robot as operating range is unlimited as long as the internet connection is available.
The Wi-Fi robot consists of three main parts: the robot, the IoT platform, and the human machine interface (HMI).Communications among the part are described by a block diagram shown in Fig. 1.The robot can be any conventional robot that has a Wi-Fi connection.The IoT platform is a server to accommodate communication between the robot and other devices through the internet.The HMI is a device connected to the IoT platform and used by an operator to operate the robot.The detail description of each parts is given in the following subsections.

A. Three-Wheeled Mobile Robot
Any robot can be developed into a Wi-Fi robot.A three wheeled robot is deployed into a Wi-Fi robot in this study.The model of the robot is shown in Fig. 2. The robot consists of the following components: three wheels, two DC motors, a motor driver, a controller, a Wi-Fi module, chassis, and power supply.https://doi.org/10.20895/infotel.v12i2.471The robot has three wheels and includes two active wheels and a passive wheel.An active wheel is a wheel driven by a motor while a passive wheel is driven by nothing.Each active wheels in the robot is driven by a DC (direct current) motor.The active wheels are used to propel and control the robot movement.The passive wheel movement is a reaction of the active wheels movements.The Wi-Fi module is used to receive a command signal and results in a signal for rotating the motor called the rotation signal.The motor driver is to adjust the DC motor rotations by manipulating the supplied power to the motors.The motor driver works based on the rotation signal provided by the controller.
A diagram of signal flow in operating the robot is illustrated in Fig. 2. A command signal for operating the robot is given by the operator and sent to the robot through the internet.The command signal is received by Wi-Fi module and forwarded to the controller.The controller processes the command signal to determine a rotation signal.A DC motor is component that converts DC electric energy into mechanical rotational work.The DC motor receives electric energy as input and produces mechanical rotation as the output.Dynamics of the DC motor are described by the following equations [24]: where  is the motor speed,  is the motor terminal voltage,  is the electric current through the motor,   is the back EMF constant of the motor,   is the torque constant,  is the motor terminal resistance,  is the motor terminal inductance,  is the motor and load inertia, and   is the disturbance torque.
The (1) shows that the motor speed is proportional to the voltage on the motor terminal.Interchanging the voltage polarity will change the direction of the motor rotation.According to (2), the supplied current to the motor is proportional to the time derivative of motor speed or motor acceleration.The higher supplied current results in the higher rotational speed.Rotation of both motors on the robot drives the robot to move.Manipulating the motor's rotation will result in the robot maneuvering.The robot was moving straight if both motors rotate equally in speed and direction.While both motors rotate unequally, the robot is going to turn.Higher rotational speed on the right-hand side motor results in the robot to turn left, and vice versa.
The robot maneuver is resulted in manipulating the supplied voltage and current to the motor.The voltage polarity affects the direction of motor rotation while the current determines the rotational speed.The manipulation can be done using a device known as the motor driver.The motor driver works to adjust the supplied current and voltage to the motor.The adjustment is made based on the rotation signal given by the controller.
A microcontroller is used to do a computational process to control and determine any actions of the robot.The microcontroller is the brain of the robot.The computational process is done based on an algorithm that was embedded in the microcontroller.In the developed robot, the microcontroller receives a command signal from a Wi-Fi module as an input, processes the input through a computational process, and results in a signal to rotate the motors as an output.
The computation is done based on an algorithm that was already embedded in the microcontroller.The Wi-Fi module on the developed robot is used to connect the microcontroller and an IoT platform.The Wi-Fi module is a communication bridge between the robot and internet networks.Any microcontrollers supported by a Wi-Fi connection or a compatible Wi-Fi module can be used to develop the Wi-Fi robot.This study applies a NodeMCU ESP-12 in robot development.It is an Arduino based microcontroller that is already equipped with Wi-Fi module.The NodeMCU is programmed in C language using the Arduino IDE.
A robot chassis is used as a place to install and integrate all of the robot components in building the robot.The chassis is designed based on the location of components installation and the size of components.The chassis design is done using computer software, https://doi.org/10.20895/infotel.v12i2.471which is Adobe Illustrator.The designed robot chassis is shown in Fig. 3.The small circles in the figure indicate the screw holes for placing the components, while the small rounded rectangles are the holes for cable lines.The shapes with captions are showing the location of the robot components.The designed chassis is realized on an acrylic sheet.The acrylic sheet is cut according to the design using a laser cutter.

B. Internet of Things (IoT) Platform
An IoT platform is used as the server for communication among devices through the internet.Several IoT platforms are available for free and paid.An IoT platform named Blynk is used in this Wi-Fi robot development.It is a cloud IoT platform accessed through a mobile application.The Blynk provides free of charge service for limited applications.The Blynk is compatible several low-cost microcontrollers and including the NodeMCU ESP12.

C. Human Machine Interface (HMI)
A human-machine interface (HMI) is an interface for humans as the operator to operate a device.In this developed robot, the HMI is used by the operator to give a command for moving the robot.The given command on HMI is sent to the IoT platform and transmitted to the robot through the internet.Blynk provides an application for building an HMI on a smartphone.Therefore, the smartphone is used as the device for operating the robot.

D. Robot Construction
Table 1 shows a list of required components for building the Wi-Fi robot.The parts were selected based on the features, functionality of market availability, and price.The robot is built through the following steps: 1) installing the components on the robot chassis, 2) wiring the electrical connection among the components, 3) writing a coding program for operating the robot, 4) embedding the code program into the microcontroller, and 5) creating an HMI on a smartphone.Schematic of the electrical wiring among the robot components is shown in Fig. 4. The schematic shows that the robot is built using five components: a NodeMCU ESP-12, a motor-shield ESP-12, a power supply, and two units of DC motor.The motor shield ESP-12 is a special motor driver board for the NodeMCU ESP-12.Applying the motor shield on the robot makes the electronics wiring simple as shown in Fig. 4. The lines on the schematic indicate cables connecting the components.The robot is built by connecting both DC motors to terminals on the motor shield and the power supply to the micro USB port on the NodeMCU ESP-12.The components installation and wiring result in the assembled robot shown in Fig. 5.The next step is to program the robot by writing code for the NodeMCU ESP-12.The NodeMCU ESP-12 is programmed in C language.It can be programmed using Arduino Integrated Development Environment (Arduino IDE).In developing the Wi-Fi robot, the program has two main parts: 1) establishing a connection between the NodeMCU ESP-12 and the Blynk IoT platform, and 2) controlling the robot movements.The robot movement includes forward, backward, turn right, turn left, and idle.The movements are resulted by manipulating the rotation of both motors on the robot.Program code for the Wi-Fi robot is given as follows, 64 Jurnal Infotel Vol.12 No.2 May 2020 https://doi.org/10.20895/infotel.v12i2.471The Wi-Fi robot is controlled by the operator using an HMI.The Blynk provides several virtual components of HMI, and virtual buttons are selected in designing the HMI for operating the robot.Fig. 6a shows the HMI layout.The HMI has four buttons and includes: FWD for forwarding movement, Back for backward movement, RIGHT for turn right, and LEFT for turn left.The parameter of each virtual button needs to be set and an example is given in Fig. 6b.The figure shows the FWD button, where the output of the button is defined as the virtual pin V0.The code program of the FWD button is shown at the lines 71 to 77.The parameter value of V0, param[0], is 1 if the FWD button is pressed, otherwise is 0.

III. RESULT
The construction process described in the previous section results in a robot shown in Fig. 7.An experimental test is done by operating the robot using the HMI of the robot on the Blynk application on the smartphone.The robot is able to communicate with the smartphone through the Wi-Fi internet connection.
The experimental test results is listed in Table 2.The results show that the robot works well according to the functionality.The HMI works well for controlling the robot.However, the small delay sometimes happened during the test but it is still acceptable for demon-strating the Wi-Fi robot operation.

IV. DISCUSSION
As intended for teaching aids in introducing robotics and IoT, the robot was developed to be simple as possible.The developed robot was designed to have a simple mechanical structure.It makes easy in constructing the robot body.Moreover, it can eliminate the impression of hard and heavy on mechanical work.
The robot was also designed to have the simplest electronics circuit.A complex electronics connection may cause the students to be confused and frustated.It may demotivate the students to learn, especially the beginner.Applying the motor shield on the developed robot makes the electronics circuit of the robot to have very simple wiring.The Fig. 5 shows that the robot uses only four wires.The simple wiring makes the electronics connection be easily made and minimizing errors.The simple wiring is also intended to make the students easily understand the signal flow in the robot.
The code program of the robot was provided and written in C language using Arduino IDE.For learning and building the robot, the students have to be introduced the basics Arduino.

V. CONCLUSION
A low-cost Wi-Fi robot has been developed.The robot is easily built as it has a simple mechanical structure and electronics wiring.The robot could be remotely operated using a smartphone through an internet network.The robot is suitable for education activities, especially for introducing robotics and IoT.The cost of the robot components is less than USD 20, which is quite cheap for an educational robot.

VI. FURTHER WORKS
The presented robot is the first generation of our developed robot.The work on robot development is continued by applying sensors and control systems.Applying the sensors can make the robot to do a remote measurement, while the measurement data are sent through the internet.The robot can also be used in developing an autonomous robot by integrating a trajectory tracking control system and path planning.The trajectory tracking control system can adopt the results from other works, for example, in [25]- [27].

Fig. 5 .
Fig. 5. Photo of Components Installation and Wiring of The Wi-Fi Robot

Fig. 6 .
Fig. 6.The Human-Machine Interface (HMI) for Operating The Robot: a) The Digital Buttons on The HMI; b) Parameter Setting of The FWD Button.

Table 1 .
Components of The Wi-Fi Robot

Table 2 .
Operating Test Result of The Wi-Fi Robot