31
Guía de manejo y uso del robot vex Este tutorial permitirá conocer el manejo del robot vex como manejarlo a través del joystick y/o de forma autónoma también como se ha manejado la forma inalámbrica y los problemas que surgieron. Primeramente veremos o describiremos físicamente (hardware) al prototipo armado que tenemos, señalando como van conectados los motores los switch etc. Más tarde veremos el uso del software easyC para crear programas para nuestro robot y como cargarlos en él, y como están creados los programas ya probados e instalados.

Guia de Uso y Manejo Robot VEX Version2

Embed Size (px)

DESCRIPTION

Guia de Uso y Manejo Robot VEX Version2

Citation preview

Page 1: Guia de Uso y Manejo Robot VEX Version2

Guía de manejo y uso del robot vex

Este tutorial permitirá conocer el manejo del robot vex como manejarlo a través del joystick y/o de forma autónoma también como se ha manejado la forma inalámbrica y los problemas que surgieron.

Primeramente veremos o describiremos físicamente (hardware) al prototipo armado que tenemos, señalando como van conectados los motores los switch etc.

Más tarde veremos el uso del software easyC para crear programas para nuestro robot y como cargarlos en él, y como están creados los programas ya probados e instalados.

Page 2: Guia de Uso y Manejo Robot VEX Version2

Hardware:El cuerpo o chasis del robot está compuesto por barras de metal .

Presenta 4 motores que sostienen a las 4 ruedas, los motores son conectados al controlador VEX mediante controladores de motor (motor controller).

El controlador central (cortex) se sitúa al centro del vex sobre una placa metálica, en este controlador se conectan los motores y switch que desees agregar, también dispone de pines disponibles para señales digitales y análogas, se puede considerar la parte más importante del robot, ya que aparte de conectar los demás elementos del vex es donde implementas o cargas el programa.

Page 3: Guia de Uso y Manejo Robot VEX Version2

En la parte superior cuenta con un puerto usb para conectarlo al computador y poder cargar los nuevos programas.

Bumper switch (interruptor de parachoques) Es un pulsador que cuando presiona puede hacer que el robot para responder a lo programado. Lo hace mediante el mantenimiento de una señal de alto en su puerto del sensor, lo que significa que el interruptor de parachoques se apaga cuando no se presiona.

Limit Switch (final de carrera) Se utiliza para determinar la proximidad de los equipos (la sección Aplicaciones ilustra algunos ejemplos). El final de carrera puede emitir sólo dos señales: ON y OFF. Las fuerzas externas, tales como colisiones, producen una señal digital ON, que permanece encendido hasta que se suelta el brazo de palanca.

Page 4: Guia de Uso y Manejo Robot VEX Version2

El mando joystick Tiene dos joysticks analógicos de 2 ejes, 4 botones de disparo en la parte trasera y dos pads direccionales de 4 botones en la parte superior. También tiene un acelerómetro que proporciona valores de inclinación XY. Que de momento nos sirve para manejar al de forma alámbrica o inalámbrica mediante las key vexnet 2.0.

El mando presenta una serie leds que nos muestran el estado del joystick y marcas (números) que representan los grupos de botones.

Etiquetas de leds:JOYSTICK: si esta roja significa que las baterías están descargadas.

ROBOT: si esta rojo se detecto la batería del robot baja o el microcontrolador es incompatible

VEXnet: color rojo indica que no se ha detectado key vexnet.

Page 5: Guia de Uso y Manejo Robot VEX Version2

GAME: se enciende de color verde al manejar el robot, el color rojo indica un reinicio (se encienden todos los demás led en rojo)

CONFIG: es un botón de reinicio del joystick, sirve para calibrarlo nuevamente.

El joystick analógico izquierdo, tiene los ejes 3 y 4.

El joystick analógico derecho, tiene los ejes 1 y 2.

Los botones de la parte trasera tienen 5 y 6.

Y los de la parte superior 7 y 8.

La key VEXnet 2.0

Proporciona comunicación inalámbrica entre controlador Cortex y VEXnet joysticks. Esta clave utiliza el nuevo protocolo de comunicación VEXnet 2.0 sobre un radio personalizada 2,4 GHz.

Page 6: Guia de Uso y Manejo Robot VEX Version2

Manejo de software y programación de vex.

Para programar el controlador vex tenemos la posibilidad de usar 2 software: RobotC y easy C (instalador diponible versión 4218), ambos piden una licencia, pero easy C brinda una licencia gratuita por una semana así que usaremos este software.

Tambien se necesita actualizar el firmware del controlador, el joystick y la key Vexnet usando VEXnet-Key-2.0-Update-Utility-Version-3.0-withInst y VEXnetUpgradeV4.1.5.withInst

para no tener problemas de compatibilidad con el programa al compilar o al intentar usar el wireless del joystick.

NOTA: actualmente están actualizados y compatibles.

Cada uno de estos archivos tiene un manual de instrucciones propio.

Usando Easy C:

Page 7: Guia de Uso y Manejo Robot VEX Version2

Al empezar a programar se debe escoger que tipo de programa será implementado, joystick Project nos sirve si queremos manejar el robot con el joystick vex o autonomous only Project que nos permite generar una especie de rutina para el robot y este se mueva de manera independiente.

Características principales de easy C

Cabe destacar que easy C es un software que permite la programación por bloques haciendo que sea más fácil crear un programa, ya que puedes arrastrar las instrucciones definidas y cambiar los parámetros usados.

Al iniciar un nuevo proyecto o programa, en pantalla por defecto aparecen las siguientes estructuras.

Globals: aquí se puede declarar las variables globales que tendrá el programa, ej: definir el algún motor conectado con un nombre específico.

BEGIN: señaliza el inicio de la ejecución del programa (main).

Variables: se declaran las variables locales a usar.

Page 8: Guia de Uso y Manejo Robot VEX Version2

Al sector izquierdo existe una lista de comandos que se pueden utilizar, estos están separados por secciones algunas de las más usadas son:

ProgramFlow: se encuentran las sentencias más comunes de la programación como los son los “if”,”whiles”, “wait”, etc

Page 9: Guia de Uso y Manejo Robot VEX Version2

Inputs: para los dispositivos que envían señales de entrada ej: limitswitch, bumper swicth, line follower etc.

Outputs: para los dispositivos que necesitan señales de entrada, ej los motores

Page 10: Guia de Uso y Manejo Robot VEX Version2

Joystick: (solo aparece en joystick project(wifi)) instrucciones para el manejo del robot a través del uso del joystick

Códigos usados

Como primera prueba se busca darle movimiento autónomo al vex usando easy C para ello de la lista de comandos a la izquierda en la sección “program Flow” se arrastra la opción “while”, para crear un while infinito “while(1)”, esto es para que las instrucciones dentro del “while” se realizan constantemente al ejecutar el programa.

Page 11: Guia de Uso y Manejo Robot VEX Version2

Luego se “setean” los motores para el movimiento arrastrando desde la sección “outputs” la opción “motor module” donde se define el puerto donde este insertado el motor y la potencia que tendrán que puede ser entre el intervalo de -127 y 127 en este caso se usa los valores de 50 y -50.

Page 12: Guia de Uso y Manejo Robot VEX Version2

Los números de los puertos los encontramos al borde de donde están conectados los motores.

Puertos

Se puede ir cambiando los valores de la potencia de los motores para crear variación en los movimientos.

Al terminar el programa se debe compilar y descargar al controlador vex.

Page 13: Guia de Uso y Manejo Robot VEX Version2

NOTA: se pueden crear funciones a partir de los movimientos que se van creando para usarlo en otros programas ej: las direcciones derecha, izquierda, adelante, atrás y stop.

NOTA: al no poder modificar la velocidad de rotación se cambia la potencia de los motores en este caso entre el rango de -127 a 127.El signo diferente hará que los motores giren a la inversa esto sirve ya que al montar el robot, 2 motores quedan opuestos a los otros 2.

Compilando y descargando nuestro programa al robot

Luego de terminar el primer programa de prueba se debe probar si funciona de manera correcta en el robot para ello se debe compilar y descargar al controlador.

Con un cable USB se debe conectar el controlador (apagado o sin la batería) al PC como se muestra en la imagen.

Luego en el easy C en el menú de barra la parte superior se busca la opción “build and download” para descargar el programa

al controlador.

Page 14: Guia de Uso y Manejo Robot VEX Version2

Luego de la correcta

compilación aparece el sgte aviso para descargar el programa al controlador.

Al señalar la respuesta “SI” aparece la siguiente ventana con la barra que muestra la descarga, la forma de conexión y el master code del controlador .

Page 15: Guia de Uso y Manejo Robot VEX Version2

Al finalizar la descarga aparece el sgte aviso que muestra que el programa se ha descargado con éxito.

Page 16: Guia de Uso y Manejo Robot VEX Version2

NOTA: en caso de falla al descargar el programa puede suceder debido a la incompatibilidad del master code, si esto sucede se debe actualizar el firmware nuevamente.

Después de compilar y descargar el programa, se enciende el robot (no olvidar conectar la batería), puede darse el caso de que las ruedas giren en sentido contrario, esto se soluciona cambiando los valores de la potencia de los motores en el programa, compilando y descargando nuevamente.

Programa autónomo

Para crear el programa autónomo se agregaron 2 limit switch y 2 bumper switch a vex los cuales fueron conectados al sector de señales digitales ya que estos sensores presentan 2 estados (1 y 0).

El programa autónomo funcionara de la sgte forma:

Bumpers

Si se toca el bumper izq el robot girara a la derechasi te toca el bumper der el robot girara a la izqsi se toca ambos bumper el robot retrocederá y luego se detendrá un tiempo

Limit switch

Si se toca el limit izquierdo o derecho la velocidad aumentaraSi se toca ambos limit el robot se girara a la derecha y luego se detendra

Primero de la lista de comandos a la izquierda en la sección “program Flow” se arrastra la opción “while”, para crear un while infinito “while(1)”, esto es para que las instrucciones dentro del “while” se realizan constantemente al ejecutar el programa.

Page 17: Guia de Uso y Manejo Robot VEX Version2

Luego en la sección “variables” se crean las variables locales limit_der, limit_izq, bumper_der y bumper_izq que corresponderán a los sensores agregados estos son creados como unsigned int

NOTA: También están los tipos de dato int, char, unsigned char.

En la columna Name se agrega el nombre de la variable.

En la columna Value se desinga un valor por defecto.

En la columna Comment se agregan los comentarios para especificar la variable.

Se toma desde la sección inputs (lista de comandos a la izq) los limit y bumper switch donde se abre una ventana nueva la que se define el puerto en el que están insertados cada sensor y la variable a la que será asignada y se agrega dentro del while.

Page 18: Guia de Uso y Manejo Robot VEX Version2
Page 19: Guia de Uso y Manejo Robot VEX Version2

Luego se crean varios “if” para cumplir las condiciones descritas más arriba.

Page 20: Guia de Uso y Manejo Robot VEX Version2

Dentro de cada “if” se debe cambiar nuevamente las condiciones de los motores para que cada caso produzca el movimiento deseado, en este caso se usan funciones creadas, y también es agregada la función “wait”, la cual detiene el avance del código un tiempo medido en milisegundos (ej 2000ms = 2 segundos), para que detenga la ejecución del programa durante el tiempo deseado.

Page 21: Guia de Uso y Manejo Robot VEX Version2

También se puede setear los motores para el movimiento arrastrando desde la sección outputs motor module donde se desplega una una ventana en la cual se asigna el puerto donde se inserto el motor y la potencia que tendrá.

Page 22: Guia de Uso y Manejo Robot VEX Version2

NOTA: como el robot tiene las ruedas fijas (sin eje) no puede girar, por lo tanto, para darle movimiento al robot y que logre moverse a los lados hacemos que las ruedas de un sector vayan más lento disminuyendo la potencia de los motores.

Para cumplir con las condiciones indicadas para los limit switch, se debe modificar dentro del “if” que usa los limit switch la potencia de los motores a 127 y -127 (estos son los máximos valores permitidos) para aumentar la velocidad del robot.

Page 23: Guia de Uso y Manejo Robot VEX Version2

Luego al terminar el programa se debe y descargar como fue explicado anteriormente.

Cualquier cambio que se desee realizar se debe corregir el código, luego compilar y cargar nuevamente en el controlador.

Uso del joystick y manejo del wireless

Para este caso se debe empezar un proyecto nuevo con la opción joystick Project (wifi)

Al iniciar un programa en esta opción aparece un nuevo bloque de comandos en la lista a la izquierda llamado joystick.

Se muestran los posibles comandos para utilizar el joystick

Actualmente el firmware del joystick, del controlador y de las key vexnet, están actualizadas, por lo tanto, ahora son compatibles y operativas.

Page 24: Guia de Uso y Manejo Robot VEX Version2

Para empezar un nuevo programa se inicia nuevamente con un while infinito.

Al arrastrar el bloque JoysticktoMotor se abre una ventana donde se ingresa el puerto al cual están conectados los motores y si debe ser invertida o no la señal (recordar que hay 2 motores opuestos y estos si deben invertirse), se designa el número del “mando” que se utilizara, como solo existe un mando o control en este caso es el número 1, luego se asigna una función a cada joystick, referenciando cada eje a los motores (los ejes están marcados en el joystick con su número respectivo)

Page 25: Guia de Uso y Manejo Robot VEX Version2
Page 26: Guia de Uso y Manejo Robot VEX Version2

En este caso se usaran los ejes 2 y 3 que corresponden a los ejes verticales de los joystick analógicos izquierdo y derecho del joystick vex.

Luego si se desea probar se va a la parte superior build and download y se compila y descarga.

Usando el joystickEl joystick se puede conectar al controlador mediante un cable USB para manejarlo de manera alámbrica.

Si se desea usar el wireless debemos conectar las key vexnet una al joystick y otra al controlador.

Luego encender ambos y esperar de 5 a 10 segundos para que se sincronicen

Page 27: Guia de Uso y Manejo Robot VEX Version2

NOTA: si el led etiquetado como joystick esta en rojo, significa que se debe cargar las baterías y por lo tanto la función wireless se deshabilita. Si es necesario se puede conectar con un cable usb el MANDO y el VEX, para continuar controlando el robot.