RFID BASED INDOOR NAVIGATION ROBOTIC CAR

This project is mainly about the indoor mobile robot navigation based on Radio Frequency Identification (RFID) to improve the moving trajectory, which is to navigate tasks of target tracking with the specified approaching configurations. Radio frequency (RF) technologies are also widely used in indoor localization. It improves the accuracy of locating the objects by utilizing the concept of reference tag. RFID are considered as viable and cost effective for indoor navigation.

COMPONENTS USED IN PROJECT:

  1. RFID Module-RC522

2. Arduino

3. L293D IC

4. DC Motors

5. Lithium battery

6. Battery charging module

7. MT3608 step up converter

8. Wheels

9. Jumper wires

TOOLS USED:

  • Soldering iron
  • Drilling Machine

DESIGN:

POWER SOURCE:

WORKING:

RFID-based control system design is based on microcontroller control system which by using Arduino UNO that works with ATmega328P microchip. The RFID module used is MFRC522. RFID module which is a reliable and compatible component to work with Arduino’s boards. DCmotor is used that can be controlled in both directions and also number of steps and speed can be controlled. Radio waves are used to transfer data from the tag to a reader. Where RFID is used to detect the signal, where it must be within range of an RFID reader up to 3cm in order to read. By connecting an L298 bridge IC to an Arduino, you can control a DC motor. A direct current or DC motor is the most common type of motor. DC motors normally have just two leads, one positive and one negative. If you connect these two leads directly to a battery, the motor will rotate. If you switch the leads, the motor will rotate in the opposite direction. To control the direction of the spin of DC motor, without changing the way that the leads are connected, you can use a circuit called an H-Bridge. A Passive RFID system using Induction coupling method: In this approach the RFID tag gets power from the reader through inductive coupling method. The reader consists of a coil connected to an AC supply such that a magnetic field is formed around it. The tag coil is placed in the vicinity of the reader coil and an electromotive force is induced it by the virtue of Faraday’s law of induction. The EMF causes a flow of current in the coil, thus producing a magnetic field around it. the magnetic field of the tag coil opposes the reader’s magnetic field and there will be a subsequent increase in the current through the reader coil. The reader intercepts this as the load information. This system is suitable for very short distance communication. The AC voltage appearing across the tag coil is converted to DC using rectifier and filter arrangement.The  reflected signal from antenna is received. This reflected signal is received by the reader and monitored accordingly and  the robot moves according to the logic given in the code .

SCHEMATIC

PCB BOARD DESIGN:

CODE:

#include <SPI.h>

#include <MFRC522.h>

#define SS_PIN 10

#define RST_PIN 9

#define RFID_SCK 13

#define RFID_MOSI 11

#define RFID_MISO 12

#define MINIMUM_TIME_BETWEEN_CARDS 0000

//Motor A

const int inputPin1  = 5;    

const int inputPin2  = 6;    

//Motor B

const int inputPin3  = 10;   

const int inputPin4  = 8;   

MFRC522 mfrc522(SS_PIN, RST_PIN);

long int last_card_read;

int Value[4]={0000, 0000, 0000, 0000};

char* CardID[4]={“87 44 65 62”, “79 25 93 99”, “B9 09 CC 99”, “F3 70 9F 1B”};

void setup()

{

  Serial.begin(9600);   // Initiate a serial communication

  SPI.begin();      // Initiate  SPI bus

  mfrc522.PCD_Init();   // Initiate MFRC522

{

    pinMode(inputPin1, OUTPUT);

    pinMode(inputPin2, OUTPUT);

    pinMode(inputPin3, OUTPUT);

    pinMode(inputPin4, OUTPUT);  

}

}

void loop()

{

if(millis() – last_card_read >= MINIMUM_TIME_BETWEEN_CARDS){

 // Look for new cards

  if ( ! mfrc522.PICC_IsNewCardPresent())

  {

    return;

  }

  // Select one of the cards

  if ( ! mfrc522.PICC_ReadCardSerial())

  {

    return;

  }

 //Show UID on serial monitor

  Serial.print(“UID tag :”);

  String content= “”;

  byte letter;

  for (byte i = 0; i < mfrc522.uid.size; i++)

  {

     Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? ” 0″ : ” “);

     Serial.print(mfrc522.uid.uidByte[i], HEX);

     content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? ” 0″ : ” “));

     content.concat(String(mfrc522.uid.uidByte[i], HEX));

  }

  Serial.println();

  content.toUpperCase();

  content = content.substring(1);

  //go through all of the CardIDs in the array and check if it matches with scanned one

  #define COMMANDS_LENGTH 4

  for(int a = 0; a < COMMANDS_LENGTH; a++)

  {

    last_card_read = millis();

    if(content == CardID[a])

    {

      if(CardID[a] == “87 44 65 62”)

      {

    digitalWrite(inputPin1, HIGH);

    digitalWrite(inputPin2, LOW);

    digitalWrite(inputPin3, LOW);

    digitalWrite(inputPin4, HIGH);

    delay(Value[a]);

   }

    else if(CardID[a] == “79 25 93 99”)

      {

    digitalWrite(inputPin1, HIGH);

    digitalWrite(inputPin2, HIGH);

    digitalWrite(inputPin3, LOW);

    digitalWrite(inputPin4, HIGH);

    delay(1000);

     digitalWrite(inputPin1, HIGH);

    digitalWrite(inputPin2, LOW);

    digitalWrite(inputPin3, LOW);

    digitalWrite(inputPin4, HIGH);

    delay(Value[a]);

   }

    else if(CardID[a] == “B9 09 CC 99”)

      {

    digitalWrite(inputPin1, LOW);

    digitalWrite(inputPin2, HIGH);

    digitalWrite(inputPin3, HIGH);

    digitalWrite(inputPin4, LOW);

     delay(Value[a]);

     }

     else if(CardID[a] == “F3 70 9F 1B”)

      {

    digitalWrite(inputPin1, LOW);

    digitalWrite(inputPin2, LOW);

    digitalWrite(inputPin3, LOW);

    digitalWrite(inputPin4, LOW);

     delay(Value[a]);

     }

  }

}

}

}

EXPERIMENTAL RESULT:

we present the design, implementation and evaluation of Mobile robots, an autonomous wheeled robot. RFID technology permits to detect the presence and identity of the signals reliability, so corrective actions on the robots behavior can be taken. As further extension line following sensors can be added depending on the application used for.

APPLICATIONS:

  • Medical/Surgical Applications
  • Danger Seeker
  • Autonomous Locomotion

Work done by:

Priya Darshini S

Saranya G

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Start a Blog at WordPress.com.

Up ↑

Create your website at WordPress.com
Get started
%d bloggers like this: