Robot Sanduino – Busca negro

El programa siguiente, hace que el robot Sanduino avance mientras detecta el suelo blanco. Cuando en el suelo detecta el color negro se detiene.

/* Programa: SanduinoBuscaNegro.ino
   Autor:    Julio Sandria (Enero 2015)
             Taller de Robótica 2015
   Robot Sanduino usando un sensor de luz 
*/

int pinSensorLuz = 2;
int valorSensorLuz = 0;
int tAvanza = 50;
int tAlto = 40;

void setup() {
  pinMode(pinSensorLuz,INPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
  delay(3000);
}

void loop() {
  valorSensorLuz = digitalRead(pinSensorLuz);

  if( valorSensorLuz == 0 ) avanza(tAvanza);

  alto(tAlto);
}

/* Se define la función avanza()
   ms = tiempo en milisegundos */
void avanza(int ms) {
  digitalWrite(6,HIGH);
  digitalWrite(7,LOW);
  digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  delay(ms);
}

/* Se define la función alto()
   ms = tiempo en milisegundos */
void alto(int ms) {
  digitalWrite(6,LOW);
  digitalWrite(7,LOW);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  delay(ms);
}

Copia el programa en el software Adruino y cárgalo a la tarjeta Arduino del Robot Sanduino. El robot debe tener conectado el sensor de luz izquierdo al pin 2 de Arduino.

Prueba el robot colocándolo en una superficie blanca o clara y déjalo avanzar hacia un superficie negra u obscura.

Observa el uso de las funciones avanza() y alto(), las cuales permiten unir cierta funcionalidad que siempre se repite.

De este ejemplo se deriva el programa para el Robot Sanduino Seguidor de línea.

Deja un comentario