Arduino Based Homemade Robot with Wireless and Voice control Mode

Basic Overview of The Arduino Based Homemade Robotics project "Homey the Robot".

Nowadays robots are playing a very important role in the industry level and also out of the industry. Dependency on robots is increasing for their fast and reliable working speed and accuracy. Considering that the demand for the robot increasing every day.

Arduino Based Homemade Robot with Wireless and Voice control Mode
Homey Robot

This research was conducted focusing on the necessity of robots in our daily life. This video documentation shows the system where a robot can be controlled in different ways like voice, wireless, and fully automatic mode. The prototype was built and tested. The robot prototype will be able to receive a voice command from a short distance. In the case of long-distance communication user will be able to connect through the internet using Internet of Things (IoT).

The used hardware's are:

  • Arduino Mega 2560
  • Arduino Nano
  • Voice Reorganization Module (V-3)
  • HC-05 Bluetooth Serial Communication Module
  • LM35 Temperature Sensor
  • LCD DISPLAY (16 X 2)
  • Ultrasonic Sensor
  • Servo motor
  • Power Supply 12v lipo
  • Jumper wire
  • L293D Motor Driver
  • Plastic board for body structure etc.

System development

The Homey robot was built based on Arduino Open-Source Platform. The robot connects itself with an android phone through the HC-05 Bluetooth Serial Communication Module. The user can give commands using an android application. The system can send commands and also receive data from the robot. Users can observe sensor values from the robot.

Another way of giving instruction is voice command. Voice Recognition module (VR-3) was used to receive voice commands along with Arduino Nano. Arduino Nano receives voice commands and processes them. Then it generates specific instruction for each voice command and sends it to Arduino mega through TX RX serial communication pins. Then Arduino mega perform according to the command. Voice training sets are stored in Arduino Nano. Therefore, when it receives a voice command it process and compares the voice with the training data-set.

Voice Input and Output 

Voice commands are stored in two different groups and each group has its unique voice commands. The voice recognition the module takes input command as a group. Each group can hold 6 commands. Maximum 255 commands can be trained with the voice recognition module.

The commands for both groups are given below:
Table 1 Voice Input and Output in Group 1

Voice Command (Input)
Arduino Command
Work (Output)
Move Forward
Move Backward
Move Left
Move Right

Table 2 Voice Input and Output in Group 2

Voice Command (Input)
Arduino Command
Work (Output)
Light on
Light on
Light off
Night mode
Night mode

IoT Input and Output

A web application and the android application were developed to control the robot remotely through the internet. The android application interface is given below:

Arduino Based Homemade Robot android app
Android application

The robot can be controlled by an android application.
While the user presses any button on the application, corresponding commands are sent via the internet to the robot. The commands are in the form of ASCII characters. The Arduino on the robot then compare the received command with its pre-defined commands and control the servo motors, gear motors, sensors, and other peripherals to move forward, backward, left, right, stop, move hands, fingers, or measuring sensor values.

The temperature button sends a command to Arduino to check the temperature sensor value and the value is sent back to the user. Temperature value also displayed on the liquid crystal display attached on the front side of the robot. If the user presses the auto button or gets disconnected from the internet, the robot can move anonymously. During the anonymous mode sonar sensor helps it to avoid obstacles.

The sonar sensor HC-05 helps to measure the distance of the obstacle in front of the robot.  The sonar sensor generates ultrasonic sound using a trigger. Then it reads the echo Pin returns the sound wave travel time in microseconds. The distance is calculated using the following rule:

Duration = Distance / Speed
       Distance = duration*0.034 / 2  

The speed of sound in air is 0.034 and it travels twice to return, so divided by 2.
The Arduino Mega microcontroller get the distance value and check the condition when it should stop and search for another long-distance path.

Motor driver l329d [8] was used to control the motor's speed. There is two gear motor attached in the lags of the robot. The motors are connected with the motor driver so that speed can be controlled by the microcontroller. There is four digital input for two motors in the motor driver. The diagram of the motor driver makes it clear:

Arduino Based Homemade Robot motor driver
Motor Driver L329D

The robot was built like the shape of a human. Different body parts like the hand, head, and fingers are controlled by servo motors. It also can handshake with a human using its robotic arms and pick objects. As the structure is not that strong, therefore at present it only can pick lightweight objects.

Arduino based robotic hand
Robotics Hand

The Video Documentation of the project given below:

If you like the Project, Please, share, Subscribe to the YouTube Channel.

0/Post a Comment/Comments