Robotic Shadow
3173 45
amey sushil chavekar

Robotic Shadow

Now a day’s science and technology is being used in every stage of human lives. Working in...

Description:-

Now a day’s science and technology is being used in every stage of human lives. Working in certain fields like high voltage transmission lines, mining at deeper level in earth crest, working with explosive material (bomb) etc. and all such dangerous fields where only robots cannot work by their own intelligence effectively. At the same time only human worker also cannot work safely. To overcome such issues it is necessary to have the system which will fulfil both the requirements i.e. human body will guide the task and machine (robotic Shadow) will act accordingly, consequently the risk factor of working in the above mentioned field will automatically decrease without affecting employment of worker. In the present investigation we have designed a prototype of human head which copies our head movements and eye section of it is programmed on ardiuno uno. currently I am working on robotic hand which uses same principle but with some extra features.

Robotics Shadow

Project Used Hardware

Arduino UNO, Arduino Nano, NRF24L01 Transceiver module, 5v DC adapter, Servo motor, potentiometers, etc.

Robotics Shadow 1

Robotics Shadow 2

Project Used Software

Arduino IDE

Project Hardware Software Selection

Arduino UNO is used for programming eye section of robot Arduino Nano is used to control robotic head NRF24L01 Transceiver module is used for wireless communication 5v DC adapter is used for powering whole system Servo motor is used to move head assembly precisely potentiometers is used to sense change in movement Arduino IDE for programming microcontrollers.

Robotics Shadow

Robotics Shadow

Robotics Shadow

Robotics Shadow

Robotics Shadow

Circuit Diagram

Robotics Shadow Circuit

Robotics Shadow Circuit 2

Robotics Shadow Circuit2

Robotics Shadow Circuit3

Robotics Shadow Circuit5

Robotics Shadow Circuit 4

Code

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

#include <Servo.h>

Servo myservo1;

Servo myservo2;

Servo myservo3;

Servo myservo4;

RF24 radio(8, 10); // CE, CSN

const byte address[6] = "mkinventions100";

const int servo1 = 3;

const int servo2 = 5;

const int servo3 = 6;

const int servo4 = 9; 

int SERVOS = 0;

void setup() {

  myservo1.attach(servo1);

  myservo2.attach(servo2);

  myservo3.attach(servo3);

  myservo4.attach(servo4);

  radio.begin();

  radio.openReadingPipe(0, address);

  radio.setPALevel(RF24_PA_MIN);

  radio.startListening();

}

void loop() {

  delay(5);

  if ( radio.available()) {

SERVO();

  }

}

void SERVO(){

      while (radio.available()) {

 int SERVOS[4];

      radio.read(&SERVOS, sizeof(SERVOS));

      myservo1.write(SERVOS[0]);

      myservo2.write(SERVOS[1]);

      myservo3.write(SERVOS[2]);

      myservo4.write(SERVOS[3]);

    }

}

Robotic head TX code

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

#define servo1 A3

#define servo2 A4

#define servo3 A5

#define servo4 A6

RF24 radio(8, 10); // CE, CSN

const byte address[6] = "mkinventions100";

int SERVOS = 0;

void setup() {

  radio.begin();

  radio.openWritingPipe(address);

  radio.setPALevel(RF24_PA_MIN);

  radio.stopListening();

}

void loop() {

int SERVOS[4];

  SERVOS[0] = map(analogRead(servo1), 0, 1023, 0, 179);

  SERVOS[1] = map(analogRead(servo2), 0, 1023, 0, 179);

  SERVOS[2] = map(analogRead(servo3), 0, 1023, 0, 179);

  SERVOS[3] = map(analogRead(servo4), 0, 1023, 0, 179);

  radio.write(&SERVOS, sizeof(SERVOS));

  delay(5);

}