Mobile robot

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.


Overview of the project

This project emphasizes the significance of wireless technology in this era. It is a new emerging technology that has potential to entertain a lot of possibilities and innovative ideas. This project is about Development of an internet controlled surveillance mobile robot. The robot will be useful for surveillance purposes and provides simple means for the parent to monitor their children or pets at home from their office. This project is aiming at employing the Internet to control the device .The user can control the robot movement remotely using the wireless Xbee-pro or using the line mode to make the robot move. On the robot also have been adding on the gas sensor to monitor the quality of air at the house. The gas sensor can detect the cigarette smoke, paper smoke and poisonous gas or toxic fume. A video also can be view on program from the camera installed on the robot. The video from the spy camera can transmits a high quality video feed, as well as sound, over high bandwidth internet. The robot also can be control and the video also can be view from other place as long there have internet in that place. Internet communication can produce an efficient and effective control solution for domestic robot process. This approach allows a remote user to monitor and control robot processes in real time. The robot also provide user friendly robot and help the user to use for other safety purposes. The internet controlled surveillance mobile robot has been successfully developed within specified time. This project has been assign to two different students. Each student have their own specification but both need to communicated and help each other to complete the task that have been given. This diagram show how the robot and the computer communication with each other and the program and the hardware that have been used.

Objective of the project

This project has been done by two students. Although we have different task we need to cooperate with each other and help each other to fulfill the objective to make the project can done successfully.

Objectives (student 1: Hardware)

  • Develop the circuit and hardware that include the module for motor control, video sensing and communication to the server.
  • Develop the microcontroller based robot controller

Objectives (student 2: Software)

  • Develop the communication software so that the robot can be remotely controlled from the Internet
  • Develop the streaming software so that the captured video can be streamed to the user using the Internet
  • Implement and test video streaming system so that the captured video can be streamed to user through Internet.

The main objective for my part are to make sure that the robot can be control from the computer using the interface on the computer and the video from the camera that have been attach on the robot can be view in the program. The robot also can be control using the internet when the user somewhere else. Study and research is the important thing in this project since both of us not from robotic or computer majoring. This is the design cycle for this project.

Literature Review

Nowadays security is preferred to all persons .There are a lot of number of journals that describe about the development of an internet surveillance mobile robot. From the research about the journal we can learn about how it have been implement and try to understand the work that have been done. We also try to make a comparison between that journal and our project. There are same work and different work between the journal and our project. These are some of journal that we use to make the comparison.

First is based on Fung PO TSO, Lizhou Zhang and Weijia Jia from the Department of Computer Science , City University of Hong Kong with their journal that explain about video Surveillance Patrol Robot System in 3G, internet and sensor network. Their work is more how to demo the patrol robot. This demo presents a novel 3G surveillance patrol system aiming at providing remote surveillance everywhere as long as the area is covered by 3G network and/or WiFi/internet. Their pilot system is formed by five major parts: sensor net with a sink node, 3G phone controlled patrol robot, a normal 3G handset and an internetworking laptop. The system uses sensors as the frontline soldiers that are responsible for detecting abnormal events or any intruders and reporting their reading to the central gateway regularly via the sink node. The central gateway is responsible for receiving and analyzing the reports (data) collected from the sensors. If any unexpected event is detected, the central gateway can automatically send a SMS notification to the user, who can choose to dial and dispatch the robot to patrol on site for the specific location to retrieve the real time video via 3G phone or computer [1]. For this journal they do not attach the wireless camera on the robot but they place the wireless camera at the center of the area and they do not have the gas sensor to detect the smoke in the house.

Second journal have been write by Maria Liwanag O.Montayre, Edger Ryan V.Samsom and William Emmanuel S.Yu from Quezon and Antipolo City with their journal title Remote Controlled Surveillance with Video Streaming. This work was to implement wireless capability to a mobile surveillance unit in the form of a remote-controlled car with a wireless camera mounted on it. The remote-control module consists of the remote-controlled vehicle which will be responsible for the mobility of the surveillance platform. It will be tapped into and connected to the parallel port breadboard on which an analog-to-digital circuit is built on. Programming is required and the researchers decided to use Java. Commands will open up ports and tap into them which will enable instructions to be sent from the computer to the car. A circuit system that connects the computer to the device that sends radio signals will enable the car and the interface to communicate. Live video streaming will be sent from the camera. This video streaming will allow the user manipulating the controls of the car via the computer to "see" the car's point of view. The camera already comes with its own web interface. The different between this work and our project we create our self the interface to view the video and we use Visual basic as the software.

Third research we made is from Angad Singh from Institute of Information Technology University, Jaypee University which his work in the Robot control (a network controlled robot). RoboControl consists of a cross platform desktop client and server application in Java which allows remote control of a robot via wireless serial communication using Java Communication API (javax.comm) along with video streaming of a camera as video source mounted on the robot using the Java Media Framework ( All development was done on Netbeans 6 Beta 1.In this project he have created a set of client and server application programs and a robot which can be remotely controlled and monitored over a network and can be used for monitoring and remote visualization of the robot's environment. The robot is connected to computer via serial port (RS-232). This communication may be made completely wireless by using an RF transmitter and receiver. The Robot has a wireless Bluetooth phone camera mounted on the robot acting as the video source. The video is captured on the server wirelessly via Bluetooth and then further streamed on the network using RTP protocol. A client would connect to the server and be able to remotely control the robot using the RoboControl Desktop Client application by connecting to the server application [3]. In this project he uses the JAVA as the GUI but we use the Visual basic as the interface and in our project we can control robot from the internet.

Work Done

Division about Thesis


Overview of the robot

PR23 (Multifunction Mobile Robot) from the cytron have been use as the robot for this project. This robot needs to be build by the user using the document and the guidelines that have been given. This robot come with the PIC16F877A microcontroller based project perfectly designed for user to start develop smart robot. It is a line following robot with optional add on gadget and capable of line following, distance measure, and control wirelessly using the SKBee-pro. It also provides LCD (2x 16 characters) and buzzer for user to indicate the condition or status of the robot that useful for debugging and testing.

This is the Schematic Diagram for the robot. All the component need to connected to the microcontroller to make sure all the system can operate in order. The robot have been modified to add the gas sensor on it and analog sensor and ultrasonic not included in this project.


The robot consist several modes that gives user to choose the modes that they wants. The modes that offer in this robot are:

Line Follow


Analog Sensor(for further improvement)

Gas Sensor

Figure 4 above show the step for the user in selection of modes using button on the robot. The robot comes with two buttons. Button 1 used for select the mode and button 2 pressed is for confirm the mode. After the button 2 have been pressed the robot will function accordingly to which mode have been user selected.

Button 1 Pressed -1- Line Follow

Button 1 Pressed -2- SKXBEE

Button 1 Pressed -3- Analog Sensor

Button 1 Pressed -4- Gas Sensor

Hardware and Software

For this project

Circuit Diagram

Chapter 3: XBee-PRO


The Xbee-PRO OEM RF Modules were engineered to meet IEEE 802.15.4 standards and support the unique needs of low cost and low power wireless sensor networks. The Xbee-PRO can send data wireless after powering up without any extra configuration. The modules comes with small pin and required 3.3V operation, starter kits have been developed to convert it into 5V operation and offer connection to PC with USB for more user friendly solution to ease user exploring the possible development application.

The most useful advantages of this module are long range data integrity and low power consumption. For XBee PRO, it offers indoor communication range up to 100m and outdoor line of sight range up to 1500m and power down current are less than 10 µA.

SKXBee-PRO has been designed for 5V TTL logic interface, no extra voltage divider is necessary. With minimum interface, it is ready to connect to microcontroller for embedded Xbee-PRO development. Furthermore, on board USB to UART converter offer easy yet reliable communication to PC for functionality test and as Xbee-PRO dongle. The modules operate within the ISM 2.4 GHz frequency band and are pin-for-pin compatible with each other.

Capabilities and Features

  • USB Plug and Play UART function
  • 5V powered
  • 5V UART interface, ready for microcontroller interface
  • Default baud rate of 9600bps
  • Long Range Data Integrity
  • indoor communication range up to 100m
  • outdoor line of sight range up to 1500m
    • As serial port replacement (wireless)
    • Point-to-point, point-to-multipoint and peer-to-peer topologies supported


Xbee-pro have been choice because of the range that it can be covered ,XBee PRO, it offers indoor communication range up to 100m and outdoor line of sight range up to 1500m and the Xbee-pro have more advantages again the xbee. This is the specification of the Xbee and Xbee-pro modules:

Board Layout

A - Connecter XBee-Pro module. The module will be soldered properly on SKXBee and tested before it is shipped to customer.

B - Reset button for XBee module.

C - 5 ways header pin for external power supply and interface to microcontroller. This kit is connected to microcontroller board, it should be powered with 5V.

D - 3.3V power indicator. This small green LED indicates the status of 3.3V from on board voltage regulator. It should be ON if either external 5V power or USB connection is connected to SKXBee.

E - These are a pair of small LED, red and yellow in color. These LEDs are connected to on board USB to UART converter. It indicates the receiver and transmitter activity. It will only work if SKXbee is connected to PC or laptop through USB cable.

F - USB B type socket. If connection to PC or laptop is required, please connect one end of USB cable (B type) to this socket, while the other end to PC or laptop USB port.

System and Connection to Microcontroller

This is how the Xbee-PRO is communicated with pc and the microcontroller. On board USB to UART converter is design for easy communication with PC for functionality test and as XBee dongle.5V TTL logic interface with no extra voltage divider offer straight forward interface to microcontroller for embedded wireless development.

A microcontroller can be considered a self-contained system with a processor, memory and peripherals and can be used with an embedded system. Most common microcontroller in the market are 5V powered, and offer 5V TTL logic interface. However, since XBee-pro is designed for 3.3V system, those that use 5V system will require extra work and components before XBee-pro module could be embedded in the system. Because of that SKXBee-pro is designed to ease the interface for 5V system. To begin, user may connect 5V and Gnd of SKXBee-pro to microcontroller board. Since the 5V system is powered with 5V, it should be very simple to get power source for SKXBee-pro. Header socket can be used to connect SKXBee to microcontroller board.

Once the 5V is supply to SKXBee-pro, the small green LED should light ON. The user might need to connect the XB_RX and XB_TX pin to microcontroller. These two pins should be cross connected to microcontroller. The XB_RX should be connected to microcontroller's Transmitter pin (TxD), while XB_TX should be connected to microcontroller's Receiver pin (RxD). Sending and receiving data require software or firmware development on particular microcontroller.

Finally, the RESET pin of SKXBee-pro. This is an optional pin for user as there is already a reset button on SKXBee-pro. However, if user would like the microcontroller to reset SKXBee-pro during run time, a transistor is required for interface between microcontroller and SKXBee-pro. Any microcontroller with UART peripheral can be used to interface with SKXBee-pro. SKXBee-pro have eliminated the hardware flow control of XBee module, thus if hardware flow control is required in development or application, it is advise the get the original XBee module.

Modes of Operation for Xbee-pro

XBee-PRO RF Modules operate in five modes. Modes of the Xbee-pro depend on Xbee-pro conditions at that that time.

Idle mode happened when the Xbee-pro not receiving or transmitting data, the RF module is in Id le Mode. The module shifts into the other modes of operation under the following conditions:

  • Transmit Mode (Serial data is received in the DI Buffer)
  • Receive Mode (Valid RF data is received through the antenna)
  • Sleep Mode (Sleep Mode condition is met)
  • Command Mode (Command Mode Sequence is issued)

Command Mode happened when a command is sent to the module, the module will parse and execute the command. System Response will response when a command is sent to the module, the module will parse and execute the command. Upon successful execution of a command, the module returns an "OK" message. If execution of a command results in an error, the module returns an "ERROR" message. If no valid Commands are received within the time specified by Command Mode Timeout Command, the RF module automatically returns to Idle Mode.

Sleep Mode enables the RF module to enter states of low-power consumption when not in use. In order to enter Sleep Mode, one of the following conditions must be met (in addition to the module having a non-zero SM parameter value):

  • Sleep_RQ (pin 9) is asserted.
  • The module is idle (no data transmission or reception) for the amount of time defined by the ST (Time before Sleep) parameter.ST is only active when SM = 4-5.

Transmit and Receive Modes active when the users try to transmit or receive something using the Xbee-pro. RF Data Packets Each transmitted data packet contains a Source Address and Destination Address field. The Source Address matches the address of the transmitting module as specified by the MY (Source Address) parameter (if MY >= 0xFFFE), the SH (Serial Number High) parameter or the SL (Serial Number Low) parameter. The <Destination Address> field is created from the DH (Destination Address High) and DL (Destination Address Low) parameter values. The Source Address and/or Destination Address fields will either contain a 16-bit short or long 64-bit long address. The RF data packet structure follows the 802.15.4 specification.

There are two methods to transmit data:

  • Direct Transmission - data is transmitted immediately to the Destination Address
  • Indirect Transmission - A packet is retained for a period of time and is only transmitted after the destination module (Source Address = Destination Address) requests the data. Indirect Transmissions can only occur on a Coordinator. Thus, if all nodes in a network are End Devices, only Direct Transmissions will occur. Indirect Transmissions are useful to ensure packet delivery to a sleeping node. The Coordinator currently is able to retain up to 2 indirect messages

If the transmission is not a broadcast message, the module will expect to receive an acknowledgement from the destination node. If an acknowledgement is not received, the packet will be resent up to 3 more times. If the acknowledgement is not received after all transmissions, an ACK failure is recorded.


This project using the Visual basic 6.0 as the interface to control the robot from the PC. The control program was designed to provide four basic controls for the robot .That's forward, stop, backward and right, left. The program also has the modes selection to select the mode for the robot to operate like line follow, wireless xbee and gas sensor. When the robot moving the robot will send back the information to the program to inform the user what the robot doing at that time. The program will auto read the even until the robot power off. The control for this robot using the Xbee as the device for wireless communication between the robot and the PC. The Xbee using the USB cable to plug at the PC so user need to make sure the COM that the USB for xbee have been use to make sure the port can be open that the program. If the user selects the wireless Xbee the user can use the robot control button to control the robot.


Presently the visual feedback is for view the video from the camera that have been attached on the robot. For view the video we use the visual basic 2008.The program can view the video from the robot and the user can snap the picture form the video and save it in the folder. This program wills automatic detect the camera that has connected to the PC and the user need to tune the antenna camera to get the better picture for this program.

We use the wireless camera that have been attach at the robot. A wireless camera is a very small mini camera that can use without connecting wires to a recorder. The camera will come with a receiver which connects to the TV for viewing but to view the video at the PC we need the converter to convert the analog signal to digital to make the video can be view at the PC. We use the easy cap as the converter.


Team Viewer is a computer software package for remote control, desktop sharing, and file transfer between computers. Team Viewer connects to any PC or server around the world within a few seconds. With Team Viewer you can remotely control any computer as if you were sitting right in front of it, even through firewalls. It just needs to start a small application, which does not even require installation or administrative rights. Team Viewer is a very secure solution. All versions feature completely secure data channels with key exchange and AES (256 Bit) session encoding. Whether you have a LAN or dial-up connection, Team Viewer optimizes display quality and speed depending on your network connection. When we want to control the robot, we just need to remote the PC at home which has been using to install with the control program. The PC with the team viewer will open the PC at home and after that we just control the robot just like we at home using that PC.



problems and difulties