Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

17
Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase Cuarta Clase

Transcript of Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Page 1: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Patricio A. CastilloJosé M. Galarce

Septiembre 13 de 2008

Cuarta ClaseCuarta Clase

Page 2: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Fundamentos de Control Automático• ¿Qué es el control automático?

• Sistema en Lazo Abierto.• Sistema en Lazo Cerrado.

• Necesidad de la Realimentación.

Page 3: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Sistema en Lazo Abierto

• Tipo de Control en que se establecen una serie de acciones fijas para completar el objetivo.

• Ventaja: Fácil de implementar.• Desventaja: Sólo funciona si las condiciones no varían.

• No es “Control Automático”

Page 4: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Sistema en Lazo Cerrado

• Tipo de Control en que se realizan diferentes acciones para completar el objetivo de acuerdo a las condiciones del momento.

• Desventaja: Difícil de implementar.• Ventaja: Funciona aún si las condiciones varían, según las

limitaciones.

Page 5: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Necesidad de la Realimentación• La realimentación es necesaria para poder controlar las

situaciones reales.

• Se lleva a cabo por medio de dispositivos capaces de tomar datos de la realidad que puedan interpretarse como valores numéricos.

• Éstos valores numéricos son recibidos como variables de entrada que se pueden incorporar al código programable.

• De esta manera, el robot será capaz de “tomar decisiones” de acuerdo a los datos recibidos.

Page 6: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Actuadores y Sensores

• Componentes electrónicos:– Motores– Sensor de Contacto– Sensor de Luminosidad

Page 7: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Motores

• Familia

Page 8: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Motores

• Lego 43362.– 28 gr.– 9 V– 9 mA libre– 340 rpm máx.– 340 mA máx.– 5.5 N cm máx.

Page 9: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Sensor de Contacto

• Circuito esquemático.

Page 10: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Sensor de Luminosidad

• Circuito esquemático

Page 11: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Instrucciones de Movimiento Avanzadas• Anteriormente, se conocieron los comandos que permiten

realizar los movimientos básicos en el RCX:– Encender motor On(OUT_X);– Apagar motor Off(OUT_X);– Dirección Adelante Fwd(OUT_X);– Dirección Reversa Rev(OUT_X);

• Ahora se introducen nuevos comandos que permiten un control más específico de la potencia, estado y dirección:

– Establecer Potencia SetPower(OUT_X, POWER);0 <= POWER <= 7

– Establecer Estado SetOutput(OUT_X, MODE);MODE = {OUT_ON, OUT_OFF, OUT_FLOAT}

– Invertir Dirección Toggle(OUT_X);

Page 12: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Subrutinas

• Al elaborar distintos algoritmos, normalmente se repiten ciertos grupos de instrucciones (rutinas).

• Con las herramientas vistas hasta ahora, sólo se podría escribir el mismo bloque de código repetidamente, ocasionando un uso innecesario de memoria.

• Para optimizar la programación en estas situaciones, se cuenta con la posibilidad de emplear ‘subrutinas’ en el programa NQC.

• La forma de definir este tipo de estructura es la siguiente:

sub nombre(){instrucciones;

}

• Las subrutinas se escriben fuera de la tarea ‘main’.• La forma de “invocar” a una subrutina desde ‘main’ es la

siguiente:

nombre();

• En éste punto, se ejecutan las instrucciones de la subrutina y no se continúa la ejecución de las instrucciones de la tarea principal hasta que éstas se completan.

Page 13: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Mensajes

• Es posible enviar y recibir mensajes a través del puerto infrarrojo del RCX.

• Estos mensajes pueden ser entre la torre USB y el RCX, como ocurre cuando se cargan los programas o entre distintos RCX.

• Los mensajes sólo pueden ser valores de 8 bits, es decir, números entre 0 y 255.

• Sólo el último mensaje recibido es almacenado en una variable de sistema y se puede acceder a su valor a través de la instrucción:

– Message();

• Si no se ha recibido ningún mensaje, el valor será 0.• Para borrar el buffer de mensajes se emplea la función:

– ClearMessage();

• La forma de enviar un mensaje es la siguiente:

– SendMessage(mensaje);

Page 14: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Sonidos

• Una manera sencilla de conocer el estado del RCX mientras éste ejecuta algún programa es mediante sonidos.

• Con los sonidos se puede saber qué segmento del programa se está ejecutando si se le añade un sonido característico.

• De esta manera, es posible depurar programas o simplemente hacer del RCX un aparato más ruidoso.

• Existen dos formas de emitir sonidos con NQC:

– PlayTone(frecuencia, tiempo);Tono según frecuencia y tiempo

indicados.

– PlaySound(sonido);Sonidos Predeterminados:

- SOUND_CLICK

- SOUND_DOUBLE_BEEP

- SOUND_DOWN

- SOUND_UP

- SOUND_LOW_BEEP

- SOUND_FAST_UP

Page 15: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

El Algoritmo

• La palabra “Algoritmo” proviene del nombre del matemático árabe padre de nuestro sistema de numeración: Muhammad ibn Musa al-Jwarizmi.

• El concepto de “Algoritmo” consiste en un conjunto finito y ordenado de operaciones que permiten completar un objetivo.

• Es decir, es un método, cuya importancia radica en que permite describir procesos y resolver problemas matemáticos.

• Los algoritmos reciben una “entrada” y entregan una “salida”, como una función, pero el algoritmo debe ser definido, finito y eficiente.

• En la vida cotidiana se emplean continuamente algoritmos que el cerebro humano desarrolla de manera inconciente.

Page 16: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Actividad en Clase

• Ruteo subrutina• Potencia• Mensajes• Sonidos

Page 17: Patricio A. Castillo José M. Galarce Septiembre 13 de 2008 Cuarta Clase.

Patricio A. CastilloJosé M. Galarce

Septiembre 13 de 2008

Cuarta ClaseCuarta Clase