This Robot Requires Two Sensors To Control The Steering And Arm Movements.
1. Flex Sensor Controls The Robot Arm Movements.
2. Accelerometer Sensor Controls The Speed, Steering Of The Robot.
I Have Used Bluetooth Module To Transmit And Recieve The Data. The Robotic Arm Capable To Hold Upto 4KG Load.
Experimented Circuits
Be Cool, Do Cool
Sunday, July 26, 2020
Servo motor controlling using NodeMCU and Blynk App
Servo motor controlling using IoT.
Servo motor rotating angle can be controlled using NodeMCU And android app(Blynk).
Required components
- NodeMCU.
- Servo motor.
- power supply(you can use USB cable).
Schematic
Result video
Code
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <Servo.h>
Servo myservo; // create servo object to control a servo
char auth[] = "YOUR Blynk AUTH CODE";
char ssid[] = "YOUR WIFI NAME";
char pass[] = "YOUR WIFI PASSWORD";
BlynkTimer timer;
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
myservo.attach(D2);//Servo motor connecting pin,You can change pin but be sure about PWM availabilty on that pin.
}
void loop()
{
Blynk.run();
timer.run();
}
BLYNK_WRITE(V1)
{
int x = param[0].asInt();
int y = param[1].asInt();
Serial.print("X = ");
Serial.print(x);
Serial.print("; Y = ");
Serial.println(y);
if (x <= 0 && y < 600)
{
myservo.write(180);//left
}
else if (x == 1023 && y > 400) //right
{
myservo.write(0);
}
else if (x == 512 && y == 512) //stop
{
myservo.write(90);
}
else
{
myservo.write(90);
}
}
Wednesday, July 8, 2020
Friday, September 20, 2019
IoT Based DC Motor Direction And Speed Control Using Blynk App
CODE
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = " Your Blynk Auth code";
char ssid[] = "Wi-Fi name";
char pass[] = "wifi password";
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = " Your Blynk Auth code";
char ssid[] = "Wi-Fi name";
char pass[] = "wifi password";
void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
Saturday, August 17, 2019
IOT Based Real time GPS Tracker Using Blynk App
CODE
#define BLYNK_PRINT Serial
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = "YOUR BLYNK AUTH ID";
char ssid[] = "WI-FI NAME";
char pass[] = "WI-FI PASSWORD";
int GPSBaud = 9600;
float lat;
float lon;
TinyGPSPlus gps;
int RXPin = D2;
int TXPin = D3;
float startTime;
SoftwareSerial gpsSerial(RXPin, TXPin);
WidgetMap myMap(V1);
WidgetLCD lcd(V4);
BlynkTimer timer;
void yn()
{
int index = 0;
float lat = (gps.location.lat());
float lon = (gps.location.lng());
myMap.location(index, lat, lon, "value");
lcd.print(1, 0, lat); // use: (position X: 0-15, position Y: 0-1, "Message you want to print")
lcd.print(1, 1, lon);
}
void setup()
{
gpsSerial.begin(GPSBaud);
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
if (millis() > startTime + 60000) {
startTime = millis();
}
while (gpsSerial.available() > 0)
if (gps.encode(gpsSerial.read()))
if (millis() > 5000 && gps.charsProcessed() < 10)
{
Serial.println("No GPS detected");
while(true);
}
if (gps.location.isValid())
{
Serial.print(" lat: ");
Serial.print(gps.location.lat(),7);
Serial.println();
// use: (position X: 0-15, position Y: 0-1, "Message you want to print")
Serial.print(" lng: ");
Serial.println(gps.location.lng(),7);
yn();
}
else
{
Serial.print(F("INVALID"));
Serial.println();
}
Blynk.run();
timer.run();
}
IOT Based Accelerometer Sensor controlled Robot using Blynk App
#define BLYNK_PRINT Serial
#include <SoftwareSerial.h>#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = "Your Blynk Auth ID ";
char ssid[] = "Your WI-FI Name";
char pass[] = "Your WI-FI Password";
const int ml1 = D1;
const int ml2 = D2;
const int mr1 = D3;
const int mr2 = D4;
void setup()
{
pinMode(ml1, OUTPUT);
pinMode(ml2,OUTPUT);
pinMode(mr1, OUTPUT);
pinMode(mr2,OUTPUT);
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
}
void loop()
{
Blynk.run();
}
BLYNK_WRITE(V1)
{
int x = param[0].asFloat(); //acceleration force applied to axis x
int y = param[1].asFloat(); //acceleration force applied to axis y
int z = param[2].asFloat();//acceleration force applied to axis y
/*x = map(x, -10, 10, 255, -255);
y = map(y, -10, 10, 255, -255);
z = map(z, -10, 10, 255, -255);*/
Serial.print("x axis:");
Serial.println(x);
Serial.print("y axis:");
Serial.println(y);
Serial.print("z axis:");
Serial.println(z);
if(y==0&&x==0)
{
digitalWrite(ml1, HIGH);//stop
digitalWrite(ml2, HIGH);
digitalWrite(mr1, HIGH);
digitalWrite(mr2, HIGH);
}
else if(y<0)
{
digitalWrite(ml1, HIGH);//forward
digitalWrite(ml2, LOW);
digitalWrite(mr1, HIGH);
digitalWrite(mr2, LOW);
}
else if(z<6)
{
digitalWrite(ml1, LOW);//reverse
digitalWrite(ml2, HIGH);
digitalWrite(mr1, LOW);
digitalWrite(mr2, HIGH);
}
else if(x>1)
{
digitalWrite(ml1,HIGH);
digitalWrite(ml2, LOW);//right
digitalWrite(mr1, LOW);
digitalWrite(mr2, HIGH);
}
else if(x<0)
{
digitalWrite(ml1,LOW);
digitalWrite(ml2, HIGH);
digitalWrite(mr1, HIGH);//left
digitalWrite(mr2, LOW);
}
else
{
}
}
Subscribe to:
Posts (Atom)
CIRCUITS WITH PROJECTS SOURCE CODES
-
Blynk App Configuration Video CODE #define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSim...
-
Servo motor controlling using IoT. Servo motor rotating angle can be controlled using NodeMCU And android app( Blynk ). Required components ...
-
This Robot Requires Two Sensors To Control The Steering And Arm Movements. 1. Flex Sensor Controls The Robot Arm Movements. 2. Accelerome...