Instrucciones Innobot
Movimiento
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); } |
Entradas y Salidas
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
Publicar un comentario