Segunda parte
INTRODUCCIÓN
Rover 5 es una nueva generación de chasis de robot , diseñado específicamente para estudiantes y aficionados. A diferencia de los chasis con orugas convencionales, la holgura se puede ajustar girando las cajas de engranajes en incrementos de 5 grados. Las bandas de goma “elásticas” mantienen la tensión a medida que se levanta el espacio libre.
Dentro del chasis hay 4 bobinas de supresión de ruido en la parte inferior y un soporte de batería que acepta 6 baterías AA (no incluidas). Se recomienda utilizar baterías de NiMh ya que duran más y tienen una salida de corriente más alta que las baterías alcalinas.
Cada caja de cambios tiene una relación de 87: 1. El chasis se puede actualizar para incluir cuatro motores y codificadores .
ESPECIFICACIÓN
- Voltaje nominal del motor: 7.2V
- Corriente de bloqueo del motor: 2.5A
- Par de parada del eje de salida: 10Kg / cm
- Relación de caja de cambios: 86.8: 1
- Velocidad: 1Km / hora
- Dos motores (sin encoder)
Materiales
Vamos a necesitar de los siguientes materiales para realizar este proyecto
Chasis Rover 5
Módulo bluetooth hc-06(el hc-05 también sirve)
1 Arduino Romeo
Buzzer
Led o linterna led
Cables dupont
Batería 9 voltios
*Si bien en el video muestro las pruebas hechas con esta batería recomendaría otro tipo de batería de mayor amperaje, porque estas duran muy poco, para hacer pruebas está bien
Hojas de datos
Código Fuente
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
//Más proyectos en http://www.rogerbit.com //Suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 //Grupo en Facebook https://www.facebook.com/groups/RogerBit/ //declaración de variables String cadena, var, dato; int regulador; int E1 = 5; int E2 = 6; int M1 = 4; int M2 = 7; int BUZZER = 11; int luz = 9; void setup () { Serial.begin(9600);// setea la velocidad del puerto serial bluetooth } void loop () { //lee las cadenas que ingresan al puerto serie if (Serial.available()) { cadena = String(""); while (Serial.available()) { cadena = cadena + char(Serial.read()); delay(1); } partirCadena();//llama a la función partirCadena regulador = dato.toInt();//convierte el valor recibido en un entero Serial.println(regulador);// muestra el valor en recibido en el terminal serial if (var == "mot1") {//compara el valor de la cadena obetinada analogWrite (E1,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M1,LOW);//LOW o HIGH es la dirección del motor analogWrite (E2,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M2,LOW);//LOW o HIGH es la dirección del motor } if (var == "mot2") {//compara el valor de la cadena obetinada analogWrite (E1,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M1,LOW);//LOW o HIGH es la dirección del motor analogWrite (E2,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M2,HIGH);//LOW o HIGH es la dirección del motor } if (var == "mot3") {//compara el valor de la cadena obetinada analogWrite (E1,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M1,HIGH);//LOW o HIGH es la dirección del motor analogWrite (E2,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M2,LOW);//LOW o HIGH es la dirección del motor } if (var == "mot4") {//compara el valor de la cadena obetinada analogWrite (E1,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M1,HIGH);//LOW o HIGH es la dirección del motor analogWrite (E2,regulador);//El valor 255 es la mayor potencia del motor digitalWrite(M2,HIGH);//LOW o HIGH es la dirección del motor } if (var == "claxon") {//compara el valor de la cadena obetinada analogWrite (BUZZER,regulador);//El valor 255 es la mayor potencia del motor } if (var == "luz") {//compara el valor de la cadena obetinada analogWrite (luz,regulador);//El valor 255 es la mayor potencia del motor } } } void partirCadena() { if (cadena.indexOf(" ") >=0){ //comprueba los datos recibidos si tienen algun espacio // filtra la cadena luz mot1 o buzzer. Toma desde el primer carácter hasta el espacio en blanco. //y lo asigna a la varibla var var = cadena.substring(0,(cadena.indexOf(" "))); dato = cadena.substring(cadena.indexOf(" ")+1); //Obtiene el valor despues del espacio en blanco y lo asigna a la variable dato } } |
Aplicación en App Inventor
Bloques
Descargar aplicación y archivo fuente
En el próximo video se publicará el código fuente para arduino y la aplicación en app inventor, no te lo pierdas suscribete al canal y activa la campanilla de notificaciones en el siguiente link http://www.youtube.com/user/carlosvolt?sub_confirmation=1
Puedes adquirir a Rover 5 en la página de DFRobot
VIDEO RECOMENDADO
SUSCRIBETE A NUESTROS BOLETINES, RECIBE EN TU CORREO LAS NOTICIAS MÁS DESTACADAS, SÓLO INGRESANDO TU CORREO ELECTRÓNICO
[wysija_form id=”1″]