Let's Make Robots!

another 3 servo hexapod with arduino S3V3

navigate around via ir........

Very simple robot with sharp ir and microswitches.............. 3 servos and arduino brain.......

 

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

/// diego colonnello hexapodo//
///21 septiembre 2010 ///

#include <Servo.h>

Servo servocentro; 
Servo servoderecho;
Servo servoizquierdo;
int sensorPin = 1;    // pin de entrada sensor sharp
int antenaderecha = 3;
int antenaizquierda = 2;
int distancia = 200;


void setup()
{
  Serial.begin(9600);
  servocentro.attach(9);  //conecta el servo del centro al pin 9
  servoderecho.attach(8);  // conecta el servo derecho al pin 8
  servoizquierdo.attach(10);  // conecta el servo izquierdo al pin 10
  pinMode(antenaderecha, INPUT); 
  pinMode(antenaizquierda, INPUT); 
}


void loop()
{

  Serial.println(analogRead(1));

  {

    if (analogRead(1) <= distancia)
    {
      adelante();
    }
    if (analogRead(1) > distancia)
    {

      girar_iz();          // muevete girando
    }
  }
  {
    if (digitalRead(antenaderecha) == HIGH)
    {
      girar_iz();
    }
    if (digitalRead(antenaizquierda) == HIGH)
    {
      girar_der();
    }


  }


}

//funciones de caminar//

// camina hacia adelante//
void adelante()

{
  servocentro.write(97);
  servoderecho.write(120);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(83);
  servoderecho.write(60);
  servoizquierdo.write(60);
  delay(500);
}

//camina retrocediendo

void atras()

{
  servocentro.write(97);
  servoderecho.write(60);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(83);
  servoderecho.write(120);
  servoizquierdo.write(120);
  delay(500);
}

//gira el cuerpo

void girar_iz()

{
  servocentro.write(83);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(97);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(83);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(97);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(83);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(97);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(83);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(97);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
}

void girar_der()

{
  servocentro.write(83);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(97);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(83);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(97);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(83);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(97);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
  servocentro.write(83);
  servoderecho.write(60);
  servoizquierdo.write(120);
  delay(500);
  servocentro.write(97);
  servoderecho.write(120);
  servoizquierdo.write(60);
  delay(500);
}



 

gonna post the code (very simple one) and more pics...

could you write a more detailed description about the construction and functionality please? how is the program, any future plans etc?

as I saw newcommers just through 1-2 videos 4-5 words and thats it :(

Hi Diego long time no see ;)

my friend, i was racing rally cars in australia and brazil, but i am back at robotics for now...... trying to learn new things......