1

Pann Ei Phyu1, Nu Nu Win2

1ME Candidate, Student of Mandalay Technological University, 2Associate Professor, Mechatronic Engineering Department,

Mandalay Technological University, Mandalay, The Union of Myanmar



Programmable Mobile Servant Robot

Abstract– Mobile robots are becoming a common sight nowadays. This paper expresses the design and simulation of a programmable mobile servant robot that can be built at a minimum cost. It has four wheels for movement. It is capable of moving forwards and backwards. It is able to serve food and drink to customers in the restaurant. Depends on the desire design of a mobile servant robot, it is used two DC motors for motion control. As the driving system of DC motors, L298 motor driver and microcontroller technology are used in the controller. For the design analysis of motor driving system, PIC16F887 is used and it was implemented by using Pulse Width Modulation (PWM) technique. The driving circuit for the robot is designed and it should be synchronized such that the locomotion of both wheels is executed simultaneously. The entire operation can be made closed loop with the help of feedback circuitry using incremental encoder.

Index Terms-- DC motor, Incremental encoder, Pulse Width Modulation (PWM), Programmable servant robot.

  1. INTRODUCTION

Servant robots are intelligent and helpful agents. They decrease the workload of human beings and directly improve human lifestyle. Currently, there are a lot of ways of serving to customers. For instance, waiter serving system (conventional), conveyor belt serving system (Japanese style), self-carrying system (fast food), pen-and-paper self-ordering system, etc. These systems are made in order toget attraction from customers and to reduce the need of hiring more employees in their workplace.

Moreover, they have been widely used in industries as they are multifunctional and can perform unpleasant, repetitive, boring or dangerous jobs that human workers do not want to do. Moreover, they are easy to switch from task to task, are of great help in mass production of good quality products in a short period of time, and can develop at the same rate as automation.

The main idea of mobile servant robot is to deliver the food and drink from the main counter to the customer’s table in a restaurant. This study is essential inorder to increase the efficiency of food serving to customers. In other words, it decreases the waiting time during peak hours.

Figure 1. Frame design of a mobile servant robot

II. Overall System Configuration

The focus of this paper is to operate the robot with the program which can predetermine or repair the path of tables by keypad. And, this is also focus to reduce labors charges by using the less expensive robot then the human workers.The robot can go the desired table as the path stored in external EEPROM or can also type the path for table from the keypad by the operator.

This study is essential in order to increase the efficiency of food serving to customers. In other words, it decreases the waiting time during peak hours. Mobile servant robot has four wheels. The diameter of each wheel is 4 inches. Front wheels are free-wheel andback wheels are controllable wheels. Each wheel is driven with DC motors to move forwards and backwards. Each motor is controlled by L298 motor driver. It was also implemented by using pulse width modulation (PWM) technique. The weight of this robot is about 2.4lbs (1.09Kg). The dimension of this robot is represents in Table 1.

TABLE 1

DIMENSION OF MOBILE SERVNET ROBOT

Length of MSR / Dimension
Vertical / 12 inches
Horizontal / 18 inches
Height / 30 inches

III. CONTROL SYSTEM

The function of mobile servant robot contains different working systems such as motion planning system, Pulse Width Modulation (PWM) technique and software development system. These systems can all communicate with others through intelligent automation robot system. The simple case includes PIC16F887microcontroller, three DC motors, LCD display, keypad, incremental encoder, external EEPROM, buzzer and limit switch. The user can use the keypad to perform the movement of mobile servant robot. Figure 2 represents block diagram of mobile servant robot.

The L298 dual full bridge driver circuits are used in mobile servant robot to control DC motors to run forwards and backwards. It was also implemented by using Pulse Width Modulation (PWM) technique. It controls the motor speed by driving the motor with short pulses. These pulses vary in duration to change the speed of the motor. The longer the pulses, the faster the motor turns, and vice versa. LCD is used to display for all command and direction.

Figure 2. Block diagram of mobile servant robot

IV. HARDWARE IMPLEMENTATION OF THE SYSTEM

The Mobile Servant Robot system can be roughly divided as input, output, monitoring and processing sections. This system is composed of several parts and control routine. The main components of the system are:

1)PIC microcontroller

2)Input portion (EEPROM, Keypad, Limit Switch, Incremental encoder)

3)Output portion (LCD displays, L298 motor driver)

A. PICA6F887 Microcontroller

For this system, PIC16F887 - 8 bit microcontroller is chosen because its program memory contains 8K words, which translates to 8192 instructions. Data memory (RAM) contains 368 bytes and EEPROM is 256 bytes.

In PIC16F887, there are 40 pins and 36 I/O pins that are user-configured on a pin-to-pin basis. There are five I/O ports such as port A, B, C, D and E. Both ports are bi-directional I/O ports. The high-level programming language, Basic-pro Universal micro software, is loaded to PIC 16F887. Pins configuration of PIC16F887 is shown in Figure 3.

Figure 3. Pins configuration of PIC16F887

B. EEPROM

EEPROM is user-modifiable read-only memory (ROM) that can be erased and reprogrammed written to repeatedly through the application of higher than normal electrical voltage generated externally or internally in the case of modern EEPROMs. In this paper, the external EEPROM is used to read and write the program for MSR.

Circuit diagram of EEPROM 24C04 smart card is shown in Figure 4. EEPROM 24C04 chip is embedded in the contact smart card. It can store ID code and provide transmitting, storing and processing data with serial communication.

Figure 4. Circuit diagram of EEPROM 24C04

C. KEYPAD

The keypad which is used in this paper is arranged as 4 rows by 3 columns matrix, will be interfaced to the PIC microcontroller. Rows are connected to four peripheral input/output pins configured as input pins whereas columns are connected to three I/O pins configured as output pins. The keypad acts as the mainly writer function that is used to input the table number and path for each table.

Figure 5. Keypad

D. LIMIT SWITCH

Limit switch is used as the input signal for microcontroller. The robot arm moves up and down to drop the tray on the table from predetermine position. The robot will drop down the tray on the table when the limit switch which is mounted on the robot is pressed. Therefore, limit switch is used as the sensor to know the position of table to drop the tray.

Figure 6. Limit switch

E. INCREMENTAL ENCODER

Incremental encoder is a device which is used to measure the speed and a position. Incremental encoders generate a series of pulses as they move. These pulses can be used to measure speed, of be fed to a counter to keep track of position. The general idea of this tool is to convert motion into a sequence of digital pulses. Later, counting these pulses we are able to estimate the relative or absolute position and the speed of the movement. In this paper, incremental encoder is used to feedback the revolution of motor. Figure 7 shows the incremental encoder.

Figure 7. Incremental Encoder

F. LCD DISPLAY

The LCD (16x2) Characters is used to display the table number, forward revolution and turn left or right which the operator typed. Pin diagram of LCD (16x2) is shown in Figure 7.

Figure 7. Pin diagram of LCD (16x2)

The pins of LCD (16x2) are connected with the PIC output pins. RS pin is the register select signal which is connected to the PIC output pin RD5. E pin is used to connect with RD4 from PIC output. D4, D5, D6 and D7 are the Data bus pins of LCD. They are used to connect with RD0, RD1, RD2and RD3 from PIC output.

G. L298 MOTOR DRIVER

The L298 is an integrated monolithic circuit in a 15 – lead Multi watt and PowerSO20 packages. It is a high voltage, high current dual full-bridge driver designed to accept standard TTL logic levels and drive inductive loads such as relays, solenoids, DC and stepping motors. Two enable inputs are provided to enable or disable the device independently of the input signals. In this thesis, two L298 motor drivers are used for mobile servant robot. One is used to drive the locomotion of wheels and the other one is used to move up and down position for lifter.

Figure 8. L298 motor driver

V. SYSTEM OPERATION

The system is design and simulation of programmable mobile servant robot. The Proteus 8 professional software was used to simulate the circuit. Keypad is used to input all command. Using the information received form the keypad, the microcontroller will control the DC motors with L298 motor driver. The system consists of two processes: old path process for old workplace and new path process for new workplace. The operator can choose the process with the switch which is used as input pin of microcontroller.

Old path process is used to type only the table number because the path of table for the workplace has been predetermined in the program. New path process is used to determine the table number with its new path [e.g. Fwd_1, Turn L/R or 0 (0 for the table which does not need to turn left or right like table 1) and Fwd_2] for the robot to go the customer’s table. All data for workplace are stored in external EEPROM which can read and write for the program. The workplace of mobile servant robot is shown in Figure 9.

Figure 9. Workplace of mobile servant robot

VI. SOFTWARE IMPLEMENTATION OF THE SYSTEM

For software implementation, PIC Basic Pro has been implemented by using Microcode Studio Compiler software to program the 16F887 microcontroller. The flow chart of mobile servant robot is shown in Figure 10.

Firstly, the program initializes the inputs, outputs and variables. When the power is supplied into the system, the operator needs to press the switch because the switch is the selection of process. If the operator wants to type only the table number, he needs to switch on to choose old path process because the program for the workplace has been stored in EEPROM. The path of table for workplace is got from EEPROM which is used to store program by the operator. If the operator wants to type the path of table for new workplace, he has to switch off to select the new path to input the new path for table. In new path process, the operator has to type the number of table and path for table [e.g. Fwd_1, Turn L/R or 0 (0 for the table which does not need to turn left or right like table 1) and Fwd_2] where he wants to go in his desired workplace.

Figure 10. Flow chart of mobile servant robot

When the robot reaches the table that the operator desired, the service will start. The robot will drop down the lifter to put the tray on the customer’s table until the limit switch which is mounted on the robot is pressed. The lifter will go to the up position after the tray is put on the table and will go to the operator as the path it came.

VII. SIMULATION TEST AND RESULT OF THE PROPOSE SYSTEM

In old path process, the operator can input only the table number where he wants to go. The robot will go to the table as the number that the operator typed because the path of the table is predetermined in program. The revolution of the DC motor B1 will count with the help of incremental encoder c1. The encoder will sense the revolution of the motor to send the microcontroller and the counter will count down the revolution of the motor. Figure 11 shows the simulation of old program process and Figure 12 describes the revolution of DC motor with the feedback of incremental encoder.

Figure 11. Simulation of old path process for mobile servant robot

Figure 12. Revolution of DC motor with the feedback of encoder

In new path process, the operator has to command for the path of table (Fwd_1, Turn L/R of 0 and Fwd_2) where he wants to go. Figure 13 shows the input command for the path of table.

Figure 13. Simulation for the input command of table in new path

As the command, the robot will go to the customer’s table. The lifter of the robot will drop down the tray on the table until the limit switch is pressed. Then, the robot moves backward and the lifter will go to the original position. After servicing, the robot will come back to the operator as the path it came. The whole function and data are displayed on LCD screen. Figure 14 and 15 show the simulation of service.

Figure 14. Simulation for lifter down

Figure 15. Simulation for lifter up

VIII. CONCLUSION

This paper discussed about the programmable mobile servant robot actuated by two motors. This is implemented using PIC 16F887 microcontroller which was programmed using the basic pro language to control the robot. The robot was successfully built and tested as specified by the objective. Through the development of the project, many skills have been acquired. For future work, the mechanical structure can be improved by building it lifter with gripper to grab cup and plate.

ACKNOWLEDGEMENT

At first, the author would like to express deepest gratitude to her beloved parents for their noble support, encouragement and their unique loving kindness to attain her destination without any trouble. The author would like to thank Dr. Nu Nu Win (Associate Professor), Department of Mechatronic Engineering, Mandalay Technological University for her kindly guidance and supervision over everything until the completion of this paper and sharing her precious time in editing the paper.

REFERENCES

[1]An autonomous four wheeled robot, Sangeet Thomas, EC Engineering Department, Parul Institute of Engineering & Technology, Vadodara, India. National Conference on Recent Trends in Engineering & Technology. 13-14 May 2011.

[2]Design and Implementation of driving circuits for DC motor control using 8051, Ashmi, Department of Electrical Engineering, National Institute of Technology Calicut, Kerala, India, National Journal of Engineering Research & Technology (IJERT), ISSN: 2278-0181, Vol.2 Issue 6, June – 2013.

[3]TI BEI HUANG. AN RFID BASED SERVING ROBOT (SERVINGBOT). Bachelor of Engineering (Electrical-Mechatronics), Faculty of Electrical Engineering, University Technology Malaysia. JULY 2012.

[4]Wireless Control of an Automated Guided Vehicle, Proceeding of the International Multiconference of Engineering and Computer Scientists 2011 Vol 2, IMESC 2011, March-16-18-2011, Hong Kong.

[5]Analysis on Modeling and Simulink of DC Motor and its Driving System Used for Wheeled Mobile Robot, Wai Phyo Aung, World Academy of Science, Engineering and Technology, International Journal of Electrical, Electronic Science and Engineering Vol:1 No:8,2007.

[6]Pulse Width Modulation for DC Motor Control Based on LM324, Dr.Jamal A Mohammed, Electromechanical Engineering Department, University of Technology, Baghdad, Eng. & Tech. Journal, Vol.31, Part (A), No.10, 2013.

