Basic Overview of The Arduino-Based Homemade Robotics project "Homey the Robot."
Nowadays, robots play a significant role at the industry level and outside of the industry. Dependency on robots is increasing for their fast and reliable working speed and accuracy. Considering that the demand for the robot expanding every day.
Homey Robot |
This research focused 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, users will be able to connect through the internet using the 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 the Arduino Open-Source Platform. The robot connects to 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. The Voice Recognition module (VR-3) received voice commands along with Arduino Nano. Arduino Nano receives voice commands and processes them. Then it generates specific instructions for each voice command and sends it to Arduino mega through TX RX serial communication pins. Then Arduino mega performs according to the command. Voice training sets are stored in Arduino Nano. Therefore, it processes and compares the voice with the training data set when it receives a voice command.
Voice Input and Output
Voice commands are stored in two different groups, each with unique voice commands. The voice recognition module takes input commands as a group. Each group can hold 6 commands. A maximum of 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)
|
Stop
|
1
|
Stop
|
Auto
|
2
|
Auto
|
Forward
|
3
|
Move Forward
|
Piche
|
4
|
Move Backward
|
Left
|
5
|
Move Left
|
Right
|
6
|
Move Right
|
Table 2 Voice Input and Output in Group 2
Voice Command (Input)
|
Arduino Command
|
Work (Output)
|
Blink
|
7
|
Blink
|
Light on
|
8
|
Light on
|
Lightning
|
9
|
Light off
|
Temperature
|
T
|
Temperature
|
Handshake
|
P
|
Handshake
|
Night mode
|
N
|
Night mode
|
IoT Input and Output
A web application and an android application were developed to control the robot remotely through the internet. The android application interface is given below:
Android application |
The robot can be
controlled by an android application.
While the user presses any button on the application, the robot sends corresponding commands via the internet. The commands are in the form of ASCII characters. The
Arduino on the robot then compares the received command with its pre-defined
commands and controls the servo motors, gear motors, sensors, and other
peripherals to move forward, backward, left, right, stop, move hands, fingers, or measure 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. The temperature value is also displayed on the liquid crystal display attached to the front side of the robot. The robot can move anonymously if the user presses the auto button or gets disconnected from the internet. 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 and 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, divided by 2.
The Arduino Mega microcontroller gets
the distance value, checks the condition when it should stop, and searches for
another long-distance path.
Motor driver l329d [8] was used to control the motor's speed. There are two gear motors attached to the legs of the robot. The motors are connected to the motor driver so the microcontroller can control speed. There are four digital inputs for two motors in the motor driver. The diagram of the motor driver makes it clear:
Motor Driver L329D |
The robot was built in 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 could be stronger, it can only pick lightweight objects.
Robotics Hand |
Code?
ReplyDeleteThe code for this Arduino based Robot can be found at this link:
Deletehttps://github.com/Squirrelbd/Homemade-robot
Please note that you have to compile the parts of the code by yourself. All the best for your Arduino based robot project.
Post a Comment