Are you are a Robotics Lover?
Robotics is an interdisciplinary sector of science and engineering dedicated to the design, construction and use of mechanical robots. Our guide will give you a concrete grasp of robotics, including different types of robots and how they're being applied across industries.
What is a Robot?
A robot is the product of the robotics field, where programmable machines are built that can assist humans or mimic human actions. Robots were originally built to handle monotonous tasks (like building cars on an assembly line), but have since expanded well beyond their initial uses to perform tasks like fighting fires, cleaning homes and assisting with incredibly intricate surgeries. Each robot has a differing level of autonomy, ranging from human-controlled bots that carry out tasks that a human has full control over to fully-autonomous bots that perform tasks without any external influences.
What is Android Mobile Controlled Robot?
This Arduino Uno based robot can be controlled via Android Mobile Application. This Project Application is designed by MOHD SOHAIL owner of this Blog page " Electronics is Fun ".
Parts List:-
1. Arduino Uno: https://amzn.to/3mmP143
2. L293D Motor driver : https://amzn.to/3uCpffT
3. DC motor (4 pieces) : https://amzn.to/3ivUtQU
4. Robot Chassis : https://amzn.to/3Bf3tkI
5. 18650 battery: https://amzn.to/3mqkAcX
6. Bluetooth Module : https://amzn.to/2UExSFZ
7. Android Device
Here is the Full video, if you got stuck in any process.
Circuit Diagram:-
Arduino Code:-
// https://www.youtube.com/channel/UCaXI2PcsTlH5g0et67kdD6g //
// Android SmartPhone Controlled Robot RC Car //
// By MOHD SOHAIL //
#include <AFMotor.h>
AF_DCMotor motor1(1, MOTOR12_1KHZ);
AF_DCMotor motor2(2, MOTOR12_1KHZ);
AF_DCMotor motor3(3, MOTOR34_1KHZ);
AF_DCMotor motor4(4, MOTOR34_1KHZ);
int whiteled = A5;
int redled = A4;
char command;
void setup()
{
Serial.begin(9600);
pinMode(whiteled, OUTPUT);
pinMode(redled, OUTPUT);
}
void loop(){
if(Serial.available() > 0){
command = Serial.read();
Stop();
switch(command){
case 'F':
forward();
break;
case 'B':
back();
break;
case 'L':
left();
break;
case 'R':
right();
break;
case 'S':
Stop();
break;
case 'a':
on();
break;
case 'b':
off();
break;
}
}
}
void forward()
{
motor1.setSpeed(150); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(150); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(150);//Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(150);//Define maximum velocity
motor4.run(FORWARD);
digitalWrite(redled , LOW);//rotate the motor clockwise
}
void back()
{
motor1.setSpeed(150); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(150); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(150); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(150); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwise
digitalWrite(redled , HIGH);
}
void left()
{
motor1.setSpeed(150); //Define maximum velocity
motor1.run(BACKWARD); //rotate the motor anti-clockwise
motor2.setSpeed(150); //Define maximum velocity
motor2.run(BACKWARD); //rotate the motor anti-clockwise
motor3.setSpeed(150); //Define maximum velocity
motor3.run(FORWARD); //rotate the motor clockwise
motor4.setSpeed(150); //Define maximum velocity
motor4.run(FORWARD); //rotate the motor clockwise
digitalWrite(redled , LOW);
}
void right()
{
motor1.setSpeed(150); //Define maximum velocity
motor1.run(FORWARD); //rotate the motor clockwise
motor2.setSpeed(150); //Define maximum velocity
motor2.run(FORWARD); //rotate the motor clockwise
motor3.setSpeed(150); //Define maximum velocity
motor3.run(BACKWARD); //rotate the motor anti-clockwise
motor4.setSpeed(150); //Define maximum velocity
motor4.run(BACKWARD); //rotate the motor anti-clockwisee
digitalWrite(redled , LOW);
}
void Stop()
{
motor1.setSpeed(0); //Define minimum velocity
motor1.run(RELEASE); //stop the motor when release the button
motor2.setSpeed(0); //Define minimum velocity
motor2.run(RELEASE); //rotate the motor clockwise
motor3.setSpeed(0); //Define minimum velocity
motor3.run(RELEASE); //stop the motor when release the button
motor4.setSpeed(0); //Define minimum velocity
motor4.run(RELEASE); //stop the motor when release the button
digitalWrite(redled , LOW);
}
void on()
{
digitalWrite(whiteled , HIGH);
}
void off()
{
digitalWrite(whiteled , LOW);
}
0 Comments