Instrucciones Innobot

motorOn()

Encender un motor.

Sintaxis

motorOn(Motor, Direccion);

Parámetros

Motor: Indica el motor el cual deberá encenderse, entre las posibilidades se tiene M1 , M2, M3, M4.
Dirección: Indica el sentido en que girara el motor una vez es encendido, entre las posibilidades se tiene FORWARD y REVERSE.

Ejemplo

void setup(){

}

void loop(){

//Adelante
motorOn(M1, FORWARD);
motorOn(M2, FORWARD);
delay(2000);
//Izquierda
motorOn(M1, FORWARD);
motorOn(M2,REVERSE);
delay(2000);
//Derecha
motorOn(M1, FORWARD);
motorOn(M2, FORWARD);
delay(2000);
//Atrás
motorOn(M1, REVERSE);
motorOn(M2, REVERSE);
delay(2000);
} 

motorOff()

Apagar un motor

Sintaxis

motorOff(Motor, Direccion);

Parámetros

Motor: Indica el motor el cual deberá apagarse, entre las posibilidades se tiene M1 , M2, M3, M4.
Dirección: Indica el sentido en que girara el motor una vez es encendido, entre las posibilidades se tiene FORWARD y REVERSE.

Ejemplo

void setup(){

}

void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Parar
  motorOff(M1);
  motorOff(M2);
  delay(2000);
}

motorsOff()

A partir de InnobotIDE 1.0 en adelante.
Apagar 2 motores al mismo tiempo.

Sintaxis

motorsOff(Motor_1, Motor_2);

Parámetros

Motor_1: Indica el primer motor el cual deberá apagarse, entre las posibilidades se tiene M1 , M2, M3, M4.
Motor_2: Indica el segundo motor el cual deberá apagarse, entre las posibilidades se tiene M1 , M2, M3, M4.

Ejemplo

void setup(){

}

void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Parar
  motorsOff(M1,M2);
  delay(2000);
}

goForward()

A partir de InnobotIDE 1.0 en adelante.
Encender dos motores hacia adelante.

Sintaxis

goForward(Motor_1, Motor_2);

Parámetros

Motor_1: Indica el primer motor el cual deberá encenderse hacia adelante, entre las posibilidades se tiene M1, M2, M3, M4.
Motor_2: Indica el segundo motor el cual deberá encenderse hacia adelante, entre las posibilidades se tiene M1, M2, M3, M4.

Ejemplo

Usando motorOn()Usando goForward()
void setup(){

}

void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Parar
  motorsOff(M1,M2);
  delay(2000);
}
void setup(){
 

}

void loop(){
  //Adelante
  goForward(M1, M2);
  delay(2000);
  //Parar
  motorsOff(M1,M2);
  delay(2000);

}

goReverse()

A partir de InnobotIDE 1.0 en adelante.
Encender dos motores hacia atrás.

Sintaxis

goReverse(Motor_1, Motor_2);

Parámetros

Motor_1: Indica el primer motor el cual deberá encenderse hacia atrás, entre las posibilidades se tiene M1, M2, M3, M4.
Motor_2: Indica el segundo motor el cual deberá encenderse hacia atrás, entre las posibilidades se tiene M1, M2, M3, M4.

Ejemplo

Usando motorOn()Usando goReverse()
void setup(){

}

void loop(){
  //Atrás
  motorOn(M1, REVERSE);
  motorOn(M2, REVERSE);
  delay(2000);
  //Parar
  motorsOff(M1,M2);
  delay(2000);
}
void setup(){

}

void loop(){
  //Adelante
  goReverse(M1, M2);
  delay(2000);
  //Parar
  motorsOff(M1,M2);
  delay(2000);
  }

motorSpeed()

Varía la velocidad de un motor.

Sintaxis

motorSpeed(Motor, Velocidad);

Parámetros

Motor: Indica el primer motor al cual se pretende variar su velocidad, entre las posibilidades se tiene M1, M2, M3, M4.
Velocidad: Ingresamos un numero entre 0- 100, el cual será el porcentaje de velocidad que queremos.

Ejemplo

Ejemplo 1
void setup(){
  // Velocidad del motor M1 en un 80%
  motorSpeed(M1,80);
  // Velocidad del motor M2 en un 50%
  motorSpeed(M2,50);
}

void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  motorOn(M1, REVERSE);
  motorOn(M2, REVERSE);
  delay(2000);
}
Ejemplo 2
void setup(){
  // Velocidad del motor M1 en un 90%
  motorSpeed(M1,90);
  // Velocidad del motor M2 en un 30%
  motorSpeed(M2,30);
}

void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  motorOn(M1, REVERSE);
  motorOn(M2, REVERSE);
  delay(2000);
}
Nota: Solo se debe escribir en la velocidad un numero entre 0- 100, sin necesidad de poner el %

turnRight()

A partir de InnobotIDE 1.0.
Girar hacia la derecha.

Sintaxis InnobotIDE 1.0 e InnobotIDE 1.3:

turnRight(Motor_Izquierdo,Motor_Derecho);

Sintaxis InnobotIDE 1.1:

turnRight(Motor_Derecho,Motor_izquierdo);

Parámetros

Motor_izquierdo: Indica el motor ubicado al lado izquierdo del robot, entre sus posibilidades M1, M2, M3, M4.
Motor_derecho: Indica el motor ubicado al lado derecho del robot, entre sus posibilidades M1, M2, M3, M4.

Ejemplo

Sin turnRight()Con turnRight()
void setup(){

}
void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Izquierda
  motorOn(M1, FORWARD);
  motorOff(M2);
  delay(2000);
  //Derecha
  motorOff(M1);
  motorOn(M2, FORWARD);
  delay(2000);
  //Parar
  motorOff(M1);
  motorOff(M2);
}
void setup(){

}
void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Izquierda
  motorOn(M1, FORWARD);
  motorOff(M2);
  delay(2000);
  //Derecha
  turnRight(M2,M1);
  delay(2000);
  //Parar
  motorOff(M1);
  motorOff(M2);
}

turnLeft()

A partir de InnobotIDE 1.0.
Girar hacia la izquierda.

Sintaxis

turnLeft(Motor_Izquierdo,Motor_Derecho);

Parámetros

Motor_izquierdo: Indica el motor ubicado al lado izquierdo del robot, entre sus posibilidades M1, M2, M3, M4.
Motor_derecho: Indica el motor ubicado al lado derecho del robot, entre sus posibilidades M1, M2, M3, M4.

Ejemplo

Sin turnLeft()Con turnLeft()
void setup(){

}
void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Izquierda
  motorOn(M1, FORWARD);
  motorOff(M2);
  delay(2000);
  //Derecha
  motorOff(M1);
  motorOn(M2, FORWARD);
  delay(2000);
  //Parar
  motorOff(M1);
  motorOff(M2);
}
void setup(){

}
void loop(){
  //Adelante
  motorOn(M1, FORWARD);
  motorOn(M2, FORWARD);
  delay(2000);
  //Izquierda
  turnLeft(M2, M1);
  delay(2000);
  //Derecha
  motorOff(M1);
  motorOn(M2, FORWARD);
  //Parar
  motorOff(M1);
  motorOff(M2);

}

lineRead ()

Leer el estado de un sensor de línea de manera digital.

Sintaxis

lineRead(Sensor);

Parámetros

Sensor: Indica el sensor de línea al cual se desea leer o conocer su estado, entre sus opciones esta J1, J2, J3, J4, J5 y J6.

Retorno

WHITE o BLACK

Ejemplo

void setup(){
}

void loop(){
  if(lineRead(J5) == WHITE && lineRead(J1) == WHITE){
    motorOn(M1, FORWARD);
    motorOn(M2, FORWARD);
  }
  
  if(lineRead(J5) == WHITE && lineRead(J1) == BLACK){
    motorOn(M2, FORWARD);
    motorOn(M1, REVERSE);
  }
  
  if(lineRead(J5) == BLACK && lineRead(J1) == WHITE){
    motorOn(M1, FORWARD);
    motorOn(M2, REVERSE);
  }
  
  if(lineRead(J5) == BLACK && lineRead(J1) == BLACK){
    motorOff(M1);
    motorOff(M2);
  }
}

 

sensorRead()

Leer el estado de un sensor de línea de manera analógica.

Sintaxis

sensorRead(Sensor);

Parámetros

Sensor: Indica el sensor de línea al cual se desea leer o conocer su estado, entre sus opciones esta J1, J2, J3, J4, J5, J6.

Retorno

Valor numérico entre 0-1024 el cual dependerá del color de la línea.

Ejemplo

void setup(){
}

void loop(){
  if(sensorRead(J5) >= 800 && sensorRead(J1) >= 800){
    motorOn(M1, FORWARD);
    motorOn(M2, FORWARD);
  }
  
  if(sensorRead(J5) >= 800 && sensorRead(J1) < 800){
    motorOn(M2, FORWARD);
    motorOn(M1, REVERSE);
  }
  
  if(sensorRead(J5) < 800 && sensorRead(J1) >= 800){
    motorOn(M1, FORWARD);
    motorOn(M2, REVERSE);
  }
  
  if(sensorRead(J5) < 800 && sensorRead(J1) < 800){
    motorOff(M1);
    motorOff(M2);
  }
}
Nota: El valor de 800 puede variar entre un valor de 0 y 1024.

lineCompare()

A partir de InnobotIDE 1.1 en adelante.
Definir un umbral de decisión para blanco y negro, cuando se hace uso de los sensores de línea.

Sintaxis

lineCompare(Sensor);

Parámetros

Sensor: Indica el sensor de línea al cual se le establecerá el umbral de decisión, entre sus opciones esta J1, J2, J3, J4.
Umbral: Umbral de decisión entre 0-1024, el cual determinara cuando es negro o blanco.

Ejemplo

void setup(){
  //umbral de decisión para el sensor J1 en 900
  lineCompare(J1,900);
  //umbral de decisión para el sensor J5 en 800
  lineCompare(J5,800);
}

void loop(){
  if(lineRead(J5) == WHITE && lineRead(J1) == WHITE){
    motorOn(M1, FORWARD);
    motorOn(M2, FORWARD);
  }
  
  if(lineRead(J5) == WHITE && lineRead(J1) == BLACK){
    motorOn(M2, FORWARD);
    motorOn(M1, REVERSE);
  }
  
  if(lineRead(J5) == BLACK && lineRead(J1) == WHITE){
    motorOn(M1, FORWARD);
    motorOn(M2, REVERSE);
  }
  
  if(lineRead(J5) == BLACK && lineRead(J1) == BLACK){
    motorOff(M1);
    motorOff(M2);
  }
}

ultrasoundRead()

Leer el estado de un sensor de ultra sonido.

Sintaxis

ultrasoundRead(Sensor);

Parámetros

Sensor: Indica el sensor de ultra sonido, al cual se desea leer o conocer su estado, entre sus opciones esta J1, J2, J3, J4, J5, J6.

Retorno

Valor numérico entre 0-130 (cm) el cual dependerá de la distancia de obstáculo.

Ejemplo

void setup(){

}

void loop(){
   //Si el sensor de ultrasonido detecta un objeto a menos de 100 Para!
  if(ultrasoundRead(J3) < 10){ 
    motorOff(M1);
    motorOff(M2);
  }else{
    motorOn(M1, FORWARD);
    motorOn(M2, FORWARD);   
  }
}

ultrasoundRead()

Leer el estado de un sensor de ultra sonido y utlizar pinzas conectadas a M3.

Sintaxis

ultrasoundRead(Sensor);

Parámetros

Sensor: Indica el sensor de ultra sonido, al cual se desea leer o conocer su estado, entre sus opciones esta J1, J2, J3, J4, J5, J6.

Cerrar pinzas M3

Valor numérico entre 0-15 (cm).

Ejemplo

void setup(){ 
}
void loop(){   //Si el sensor de ultrasonido detecta un objeto a menos de 15 cm. Para y lo sujeta!
if(ultrasoundRead(J2) < 15){ 
motorsOff(M1,M2);
motorOn(M3, FORWARD);
delay(300);
motorOff(M3);
turnRight(M1,M2);
delay(700);
motorsOff(M1,M2);
goForward(M1,M2);
delay(2000);
motorsOff(M1,M2);
motorOn(M3, REVERSE);
delay(300);
motorOff(M3);
goReverse(M1,M2);
delay(2000);
motorsOff(M1,M2);
turnLeft(M2,M1);
delay(700);
}else{
motorOff(M3);
motorOn(M1, FORWARD);
motorOn(M2, FORWARD);   
}
}

Comentarios

Entradas populares de este blog

Alarma visual (Led con ultrasonido)

Sistema de turnos con led de 7 segmentos y pulsadores

Teclado matricial 4x4 con LCD