Thursday, December 5, 2013

Robotic Arm Using Arduino Uno R3 (6 Servo With 6 Potentiometer)

HOME    I  ALL IN ONE TAB

Robotic Arm  Using Arduino Uno R3
(6 Servo With  6 Potentiometer)


Required Components

.                  1.    Arduino Uno R3
                   2.    6 Servo Motor
                   3.    6  Potentiometer
                   4.    9V Battery

    You can simply simulate this project with protues software

100% TRUSTFUL CODE AND DESIGN

1 . Design file for Robotic Arm   - DOWNLOAD
2 . Hex file                               - DOWNLOAD
2 . INO CODE                           - DOWNLOAD

sorry for advertising  

      Thank You For Downloading.

Explanation :   This design mainly constructed for controlling servo motors with potentiometer (actuators).
there are 6 servo motors and 6 corresponding potentiometer. By changing the value of potentiometer we get input signal to micro controller. we know that potentiometer produce only  analog signal therefore we needed convert this analog signal  to digital signal first . Analog signals only applied to the analog input provider by the arduino uno r3. first we read the analog signal from the input pins  .it will be in the digital form it have 10bit resolution and has  data value between 0 - 1023 . This 0 - 1023 data we mapped to 0 -255 for changing the duty cycle of servo from 0 -100 %.

                             Operation of the servo motor is worked by applying pwm signal for each 20ms cycle frequency  , the signal frequency varies from 0 - 2 ms.  Waveform indicating the  + 45 degree and +90 degree servo positioning with its frequency.








                +45 Degree






                +90 Degree



You can change this properties by changing frequency and duty-cycle of the PWM signal


 TRY THIS PROJECT AND TELL ANY PROBLEMS YOU FOUND

8 comments:

  1. where you get arduino library

    ReplyDelete
  2. http://electronicconnectors.blogspot.in/2014/08/blog-post.html

    ReplyDelete
  3. sir iam doing this as my project , aurdino uno is not driving all 5 servos properly it just turns off when i connected all the servos but it is working fine with only one servo iam using 9v 0.5MA power supply .my code is"
    #include

    Servo myservo,myservo1,myservo2,myservo3,myservo4;
    int potpin0 = 0;
    int potpin1 = 1;
    int potpin2 = 2;
    int potpin3 = 3;
    int potpin4 = 4;
    int val0 = 0;
    int val1 = 0;
    int val2 = 0;
    int val3 = 0;
    int val4 = 0;
    void setup()
    {
    myservo.attach(3);
    myservo1.attach(5);
    myservo2.attach(6);
    myservo3.attach(9);
    myservo4.attach(10);
    }
    void loop()
    {
    val0 = analogRead(potpin0);
    val0 = map(val0, 0, 1023,0,179);
    myservo.write(val0);
    delay(5);
    val1 = analogRead(potpin1);
    val1 = map(val1, 0, 1023,0,179);
    myservo.write(val1);
    delay(5);
    val2 = analogRead(potpin2);
    val2 = map(val2, 0, 1023,0,179);
    myservo.write(val2);
    delay(5);
    val3 = analogRead(potpin3);
    val3 = map(val3, 0, 1023,0,179);
    myservo.write(val3);
    delay(5);
    val4 = analogRead(potpin4);
    val4 = map(val4, 0, 1023,0,179);
    myservo.write(val4);
    delay(5);
    }"
    please help me to over come this problem

    ReplyDelete
    Replies
    1. CHECK ARDUINO CONNECTION
      AREF = +5V

      AREF, ANALOG PINS ARE DID'T DIRECTLY CONNECT WITH OUT CHECKING CURRENT LIMIT

      TRY THE CODE GIVEN BELOW;
      IF IT NOT WORKING ADD SOME 10 - 20 MICROSECOND DELAY FROM EACH ANALOGREAD();



      #include

      Servo servo1;
      int potpin1 = 0;
      int val1;
      Servo servo2;
      int potpin2 = 1;
      int val2;
      Servo servo3;
      Servo servo4;
      Servo servo5;
      Servo servo6;
      int potpin3 = 2;
      int val3;
      int potpin4 = 3;
      int val4;
      int potpin5 = 4;
      int val5;
      int potpin6 = 5;
      int val6;

      void setup()
      {
      servo1.attach(3);
      servo2.attach(5);
      servo3.attach(6);
      servo4.attach(9);
      servo5.attach(10);
      servo6.attach(11);
      }

      void loop()
      { delayMicroseconds(20);
      val1 = analogRead(potpin1);
      val1 = map(val1, 0, 1023, 0, 255 ); //
      servo1.write(val1);
      val2 = analogRead(potpin2);
      val2 = map(val2, 0, 1023, 0, 255 );
      servo2.write(val2);
      val3 = analogRead(potpin3);
      val3 = map(val3, 0, 1023, 0, 255 );
      servo3.write(val3);
      val4 = analogRead(potpin4);
      val4 = map(val4, 0, 1023, 0, 255 );
      servo4.write(val4);
      val5 = analogRead(potpin5);
      val5 = map(val5, 0, 1023, 0, 255 );
      servo5.write(val5);
      val6 = analogRead(potpin6);
      val6 = map(val6, 0, 1023, 0, 255 );
      }


      April 12, 2015 at 6:37 AM

      Delete
  4. and can you please tell me how to open that design file

    ReplyDelete
    Replies
    1. YOU MUST HAVETWO COMPONENTS FOR OPENING DSN FILE

      1. PROTEUS ( I USED PROTEUS 7.7 SP2)
      2. ARDUINO DEVICE LIBRARY FOR PROTEUS
      http://electronicconnectors.blogspot.in/2014/08/blog-post.html

      Delete
  5. This comment has been removed by the author.

    ReplyDelete