Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Electronics Project/Line Following Car/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
_*Line Following Car*_

- It is an electric car connected the right way using the infrared sensors.
- It's main work is to travel over the black line, by not leaving the black line trail.
105 changes: 105 additions & 0 deletions Electronics Project/Line Following Car/line_follow/line_follow.ino
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
#define IRl 4 //red wala sensor
#define IRr 2 //green wala sensor
bool irR,irL;

//Motor A
const int inputPin1 = 7; // INR3
const int inputPin2 = 6; // INR4

//Motor B
const int inputPin3 = 9; // INR1
const int inputPin4 = 8; // INR2

#define EN1 5
#define EN2 3

/*
//Motor A
#define inputPin1 D7; // INR3
#define inputPin2 D6; // INR4

//Motor B
#define inputPin3 D9; // INR1
#define inputPin4 D8; // INR2

#define EN1 D10
#define EN2 D5
*/
void setup()
{
pinMode(EN1, OUTPUT); // where the motor is connected to
pinMode(EN2, OUTPUT); // where the motor is connected to
pinMode(inputPin1, OUTPUT);
pinMode(inputPin2, OUTPUT);
pinMode(inputPin3, OUTPUT);
pinMode(inputPin4, OUTPUT);
pinMode(IRl,INPUT);
pinMode(IRr,INPUT);
int speed =81;
analogWrite(EN1, speed);//sets the motors speed
analogWrite(EN2, speed);//sets the motors speed
Serial.begin(9600);
}

void loop()
{
irL = digitalRead(IRl);
irR = digitalRead(IRr);

if (irL==1 && irR==1){
stop();
Serial.println("rukkk bete");
}
else if (irL==1 && irR==0){
right();
Serial.println("dayne mudle bete");
}
else if (irL==0 && irR==1){
left();
Serial.println("bayne mudlee bete");
}
else if (irL==0 && irR==0){
forward();
Serial.println("chl bete");
}
}

void left(void)
{
digitalWrite(inputPin1, HIGH);
digitalWrite(inputPin2, LOW);
digitalWrite(inputPin3, HIGH);
digitalWrite(inputPin4, LOW);
}

void right(void)
{
digitalWrite(inputPin1, LOW);
digitalWrite(inputPin2, HIGH);
digitalWrite(inputPin3, LOW);
digitalWrite(inputPin4, HIGH);
}

void stop(void)
{
digitalWrite(inputPin1, LOW);
digitalWrite(inputPin2, LOW);
digitalWrite(inputPin3, LOW);
digitalWrite(inputPin4, LOW);
}

void backward(void)
{
digitalWrite(inputPin1, LOW);
digitalWrite(inputPin2, HIGH);
digitalWrite(inputPin3, HIGH);
digitalWrite(inputPin4, LOW);
}

void forward(void)
{
digitalWrite(inputPin1, HIGH);
digitalWrite(inputPin2, LOW);
digitalWrite(inputPin3, LOW);
digitalWrite(inputPin4, HIGH);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
#include <ESP8266WiFi.h>
#include "Adafruit_MQTT.h"
#include "Adafruit_MQTT_Client.h"
#define Relay1 D6
#define Relay2 D5
#define Relay3 D2
#define Relay4 D1
#define WLAN_SSID "rakhyaar..majekar" // Your SSID
#define WLAN_PASS "kunalbandooni" // Your password
/************************* Adafruit.io Setup *********************************/
#define AIO_SERVER "io.adafruit.com"
#define AIO_SERVERPORT 1883 // use 8883 for SSL
#define AIO_USERNAME "kbandooni1" // Replace it with your username
#define AIO_KEY "aio_IlGW14oIEoK8mlMirMgRyy15v6h6" // Replace with your Project Auth Key
/************ Global State (you don't need to change this!) ******************/
// Create an ESP8266 WiFiClient class to connect to the MQTT server.
WiFiClient client;
// or... use WiFiFlientSecure for SSL
//WiFiClientSecure client;
// Setup the MQTT client class by passing in the WiFi client and MQTT server and login details.
Adafruit_MQTT_Client mqtt(&client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);
/****************************** Feeds ***************************************/
// Setup a feed called 'onoff' for subscribing to changes.
Adafruit_MQTT_Subscribe Light1 = Adafruit_MQTT_Subscribe(&mqtt, AIO_USERNAME"/feeds/Relay1"); // FeedName
Adafruit_MQTT_Subscribe Light2 = Adafruit_MQTT_Subscribe(&mqtt, AIO_USERNAME "/feeds/Relay2");
Adafruit_MQTT_Subscribe Light3 = Adafruit_MQTT_Subscribe(&mqtt, AIO_USERNAME "/feeds/Relay3");
Adafruit_MQTT_Subscribe Light4 = Adafruit_MQTT_Subscribe(&mqtt, AIO_USERNAME "/feeds/Relay4");
void MQTT_connect();
void setup() {
Serial.begin(115200);
pinMode(Relay1, OUTPUT);
pinMode(Relay2, OUTPUT);
pinMode(Relay3, OUTPUT);
pinMode(Relay4, OUTPUT);
// Connect to WiFi access point.
Serial.println(); Serial.println();
Serial.print("Connecting to ");
Serial.println(WLAN_SSID);
WiFi.begin(WLAN_SSID, WLAN_PASS);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
// Setup MQTT subscription for onoff feed.
mqtt.subscribe(&Light1);
mqtt.subscribe(&Light3);
mqtt.subscribe(&Light2);
mqtt.subscribe(&Light4);
}
void loop() {
MQTT_connect();
Adafruit_MQTT_Subscribe *subscription;
while ((subscription = mqtt.readSubscription(20000))) {
if (subscription == &Light1) {
Serial.print(F("Got: "));
Serial.println((char *)Light1.lastread);
int Light1_State = atoi((char *)Light1.lastread);
digitalWrite(Relay1, Light1_State);
}
if (subscription == &Light2) {
Serial.print(F("Got: "));
Serial.println((char *)Light2.lastread);
int Light2_State = atoi((char *)Light2.lastread);
digitalWrite(Relay2, Light2_State);
}
if (subscription == &Light3) {
Serial.print(F("Got: "));
Serial.println((char *)Light3.lastread);
int Light3_State = atoi((char *)Light3.lastread);
digitalWrite(Relay3, Light3_State);
}
if (subscription == &Light4) {
Serial.print(F("Got: "));
Serial.println((char *)Light4.lastread);
int Light4_State = atoi((char *)Light4.lastread);
digitalWrite(Relay4, Light4_State);
}
}
}
void MQTT_connect() {
int8_t ret;
// Stop if already connected.
if (mqtt.connected()) {
return;
}
Serial.print("Connecting to MQTT... ");
uint8_t retries = 3;
while ((ret = mqtt.connect()) != 0) { // connect will return 0 for connected
Serial.println(mqtt.connectErrorString(ret));
Serial.println("Retrying MQTT connection in 5 seconds...");
mqtt.disconnect();
delay(5000); // wait 5 seconds
retries--;
if (retries == 0) {
// basically die and wait for WDT to reset me
while (1);
}
}
Serial.println("MQTT Connected!");
}
4 changes: 4 additions & 0 deletions IoT Projects/GoogleAssitance_Automation_/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
_*Google Home Automation*_

- It helps to use the home lights and fans, or any other electrical appliance via Google Assistant.
- All we need is the correct connection of the NodeMCU and the WiFi.