Beruflich Dokumente
Kultur Dokumente
OBJETIVO
En este curso se planea transmitir conocimientos tericos y prcticos acerca del uso y funcionamiento de un robot a travs del robot Vex Cortex el cual, es un conjunto de piezas que trabajan y se comunican por medio del lenguaje de programacin Robot C para establecer en los participantes una capacidad de anlisis y diseo de soluciones a problemas reales realizando retos de movimiento, velocidad y sensibilidad.
INTRODUCCION
QUE ES VEX?
El Sistema de Diseo de Robtica VEX ofrece a los estudiantes una plataforma interesante para aprender sobre zonas ricas en oportunidades de carrera de la ciencia, tecnologa, ingeniera y matemticas (STEM). Estos son slo algunos de los muchos campos de los estudiantes pueden explorar mediante la creacin de VEX con la tecnologa robtica. Ms all de los principios de la ciencia y la ingeniera, un proyecto de Robtica VEX fomenta el trabajo en equipo, liderazgo y resolucin de problemas entre los grupos. Tambin permite a los educadores personalizar fcilmente los proyectos para alcanzar el nivel de habilidades de los estudiantes. La asequible plataforma VEX se est expandiendo rpidamente y ahora se encuentra en las escuelas secundarias, escuelas preparatorias y los laboratorios universitarios de todo el mundo. Los aficionados a la robtica tambin aprecian las capacidades avanzadas del sistema de VEX. RobotC es un potente lenguaje textual de programacin basado en el lenguaje C con un entorno de ventanas para escribir y depurar programas, que ofrece un depurador completo en tiempo real.
ROBOT C?
RobotC es una solucin para varias plataformas, en especial para CORTEX, NXT y RCX de LEGO, que permite a los estudiantes el aprendizaje del tipo de programacin basado en C para aplicaciones educativas y profesionales. RobotC ha sido desarrollado por la Academia de Robtica de la Universidad Carnegie Mellon de Pittsburg (Pensilvania, EUA).
El trabajo del programador es identificar el problema que el robot debe resolver, crear un plan para resolverlo, y convertir ese plan en un programa que el robot pueda comprender. El robot ejecutar el programa y seguir las instrucciones para realizar la tarea. El plan ser simplemente la secuencia de comportamientos que el robot necesita seguir. El programa ser estos comportamientos traducidos en el lenguaje de programacin. El robot puede seguir solamente su programa ya que este no puede pensar por s mismo, as como el robot no puede ser ms fuerte de cmo es construido, tampoco puede ser ms inteligente que el programa que el programador humano le dio. T,
DIAGRAMA DE FLUJO Los diagramas de flujo son representaciones visuales de flujo de un programa. Un diagrama de flujo normalmente utiliza una combinacin de bloques y flechas para representar acciones y secuencias. Los bloques tpicamente representan acciones, mientras que el orden en el cual las acciones ocurren se representa utilizando flechas que apuntan de un enunciado a otro. A veces de un bloque pueden salir muchas flechas, representando un paso donde una definicin debe ser tomada acerca de qu camino seguir. Inicio Y Fin: Son smbolos que son representados con rectngulos redondeados, usualmente contienen la palabra inicio o fin, pero pueden ser ms
Acciones: Son representadas como rectngulos y actan como comandos bsicos: wait1Msec (1000); increment line count by 1 O motor full ahead.
Decisiones: Son representadas como diamantes. Estos tpicamente contienen preguntas de YES/NO. De los bloques de decisiones salen 2 o ms flechas, representando los diferentes caminos que pueden seguirse, dependiendo de la delimitacin de la decisin. Las flechas deben ser siempre etiquetadas de adecuadamente.
EJERCICIO: Pensemos que tenemos un robot con una base que trabaja con dos motores y un sensor al frente. Ahora bien, debemos hacer que nuestro robot avance hacia adelante hasta que tope con algn obstculo, hagamos el plan
Pseudocodigo: 1. 2. 3. 4. 5. 6. Sensor enabled (activar sensor). Start motors (hacia adelante). Qustion: El sensor ha sido presionado o activado? Answer Yes: Stop motors Answer No: mantener ambos motores activos y regresar al paso 3. End.
Ahora que ya hemos aprendido a disear un buen pseudocodigo y un diagrama de flujo, lo que queda es aprender a traducir los comportamientos de pseudocodigo en ingls a lenguaje de programacin de ROBOTC.
REGLAS LEXICAS
Las rdenes al robot se escriben como texto en la pantalla del ordenador, se procesan por el compilador de RobotC para obtener un archivo en lenguaje mquina y despus se cargan en el robot, en el que se pueden ejecutar. El texto que se escribe como parte de un programa se llama cdigo. El cdigo de un programa en RobotC consiste en una serie de piezas (tokens) ordenadas secuencialmente. Cada pieza est integrada por letras, nmeros, signos de puntuacin o smbolos matemticos. Grficamente se puede expresar como sigue:
El lenguaje C (y, por tanto, RobotC, que es un derivado suyo) diferencia entre maysculas y minsculas, por lo que hay que prestar atencin cuando se escribe un programa. As, por ejemplo, wait se reconoce como una pieza del lenguaje, pero Wait no se reconoce como tal.
SIGNOS DE PUNTUACIN
ROBOTC es un lenguaje de programacin basado en texto.
Los comandos para el robot son escritos primero en la pantalla, despus son procesados por el recopilador de ROBOTC en archivo de lenguaje de mquinas que el robot comprende. Finalmente, son cargados en el robot, donde pueden ser ejecutados.
1.
El texto escrito como parte de un programa es denominado cdigo. Escribes los cdigos como normalmente escribes texto. Ten en cuenta siempre que la capitalizacin es importante para la computadora. Reemplazar una letra minscula con una mayscula (o una mayscula por una minscula) va a causar que el robot se confunda.
Se emplean varios signos de puntuacin para diferentes cometidos: ; Fin de instruccin ( ) [ ] Inicio y fin de parmetros { } Inicio y fin de estructuras de control
ESPACIOS EN BLANCO
El espacio en blanco (espacios, tabuladores y saltos de lnea) se usa para separar piezas y para hacer los programas ms legibles. Con tal de que se distingan las piezas, no tiene
x=2; x=2;
Algunos de los operadores de C++ estn formados por mltiples caracteres. Para preservar estas piezas no se debe insertar espacio en blanco entre ellos. En el ejemplo siguiente, la primera lnea usa un operador de cambio a la derecha (>>), pero en la segunda lnea el espacio aadido hace que los smbolos > se interpreten como dos elementos separados y en consecuencia se genere un error.
El uso de espacios, tabulaciones y lneas ayuda al programador a leer el cdigo con mayor facilidad. Es muy recomendable hacer un buen uso de los espacios en blanco en un programa.
INSTRUCCIONES
Una instruccin (orden, sentencia o declaracin) es una orden directa al robot. Por ejemplo, la instruccin motor[motorC] = 100; indica al robot que ponga en marcha el motor conectado al puerto C al 100 % de potencia. Las instrucciones son ejecutadas de izquierda a derecha y de arriba abajo. RobotC reconoce las diferentes instrucciones porque la gran mayora acaban en ; , pero no porque estn en diferentes lneas. Los dos siguientes trozos de cdigo son exactamente iguales para RobotC, pero el segundo es prcticamente ilegible para un programador humano.
COMENTARIOS
Comentar un programa significa utilizar el texto descriptivo para explicar las porciones de cdigo. El compilador y el robot ignoran los comentarios cuando ejecutan un programa, permitindole al programador dejar notas importantes en un formato sin cdigos, a lado de la misma codificacin del programa. Este es considerado un estilo de programacin, porque reduce la confusin despus cuando alguien ms (o inclusive t) necesite leer los cdigos. Hay 2 maneras de marcar una seccin del texto como comentario en lugar de un cdigo. (Figura 51) Tipo Una sola lnea Muchas lneas Anotacin inicial // /* anotacin final (none) */
Abajo hay un ejemplo de un programa con comentarios de una sola lnea y de varias lneas. El texto comentado se vuelve verde. (Figura 52)
COLOREADO DE CDIGO
El texto escrito como parte de un programa es denominado cdigo. Escribes los cdigos como normalmente escribes texto. Ten en cuenta siempre que la capitalizacin es importante para la computadora. Reemplazar una letra minscula con una mayscula (o una mayscula por una minscula) va a causar que el robot se confunda.
Cuando ests escribiendo, ROBOTC tratara de ayudarte coloreando las palabras que reconoce. Si una palabra aparece en un color diferente, esto significa que ROBOTC la reconoce como una palabra importante en el lenguaje de programacin.
Figura 3-> coloreando el cdigo ROBOTC coloreas automticamente las palabras claves que reconoce.
Compara este comando de tarea con correcta capitalizacin con una versin de incorrecta capitalizacin en el ejemplo anterior. La correcta es reconocida como un comando y se pone de color azul. RobotC colorea automticamente las palabras, smbolos y signos que reconoce como propios del lenguaje: