La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/05/2007.

Presentaciones similares


Presentación del tema: "Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/05/2007."— Transcripción de la presentación:

1 Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/05/2007

2 Fundamentos de Control Lazo Abierto Lazo Cerrado Estructura de la línea de control

3 Lazo Abierto En control automático, un control de “Lazo Abierto” es aquel tipo de control donde el encargado de ejecutar la acción de control, realiza una serie de acciones para ejectutar la acción de control requerida sin analizar las reacciones efectivas de las acciones que ejecuta.

4 Lazo Cerrado En control automático, un control de “Lazo Cerrado”, es aquel tipo de control donde el sistema controlador se “Informa” de los resultados de las acciones que ha tomado, y del medio, para realizar el control. En base a eso, determina sus nuevas acciones para seguir con la taréa de control.

5 Estructura de la línea de control Finalmente, analizaremos cada desafío que se nos plantee como un problema de control, como ya hemos analizado, la manera de controlar efectivamente situaciones reales de manera eficiente y correcta es a través de un sistema de “Lazo Cerrado”, por lo que es necesario que dispongamos de sensores que informen a la unidad de proceso de las condiciones reales de la situación, para que esta unidad active de manera correcta y efectiva los actuadores que, a la larga, son los que realizan las taréas físicas y visibles del control.

6 Sensores Funcionamiento de los Sensores Modos de los Sensores Tipos de Sensores Configuración de Sensores

7 Funcionamiento de los Sensores Dependiendo del requerimiento se debe utilizar un tipo de sensor adecuado para poder medir correctamente. El sensor se comporta como si fuese una variable cuyo valor no controlamos, ya que es lo que el sensor está midiendo en ese instante y eso es independiente del programa. Dependiendo del tipo de sensor podremos obtener sus datos de diferentes maneras numéricas, algunas mas prácticas que otras en ciertos ámbitos. Por los puntos anteriores, los sensores deben ser programados para que su funcionamiento sea realmente útil, esta programación hace variar 2 factores: –Utilización de potencia: Algunos sensores requieren más energía que lo normal. Por lo anterior, uno de los factores es el consumo de potencia por parte del sensor. –Tipo de entrega de dato: Los sensores indican su valor a una zona de la memoria, esto significa que nosotros podemos interpretar el valor de esa zona de memoria de distintas maneras, ya que una zona de memoria son solo un conjunto ordenado de 1 y 0..

8 Funcionamiento de los Sensores Dentro de las variables de sistema se encuentran las de los sensores. Nombres de las variables de sistema que entregan los datos de los sensores: –SENSOR_1 –SENSOR_2 –SENSOR_3

9 Modos de los Sensores El modo de los sensores dice como interpretar los datos de la dirección de memoria, los principales tipos son: –SENSOR_MODE_BOOL –SENSOR_MODE_PERCENT Para cambiar el modo de interpretación se utiliza la siguiente sentencia: –SetSensorMode(Sensor,Modo_de_sensor);

10 Tipos de Sensores Los tipos de sensores indican qué sensor es el que está conectado y de ello el sistema sabe si tendrá que suministrarle potencia o no. Los tipos de sensores que veremos serán: –SENSOR_TYPE_TOUCH –SENSOR_TYPE_LIGHT Para cambiar un tipo de sensor se utiliza: –SetSensorType(Sensor,Tipo_de_sensor);

11 Configuraciones de Sensores El sistema de los RCX trae una manera predeterminada de funcionamiento de los sensores, por lo que toda la configuración de un sensor puede definirse con: –SENSOR_TOUCH –SENSOR_LIGHT Lo anterior, utilizando la sentencia: –SetSensor( Sensor,Clase_de_sensor );

12 Subrutinas Existe la posibilidad de que de repente cierto código deba ser repetido múltiples veces en varias zonas diferentes del programa, aunque sea el mismo. Esto es una pérdida de memoria si es que se escribe en cada una de las partes por separado, por lo que existe una estructura llamada subrutina que tiene la siguiente forma: Sub nombre() { contenido; } Esto se escribe fuera del “task main()” y se guarda solo una vez en la memoria. Ahora, cada vez que se requiera ejecutar el contenido, basta con llamar a ese bloque de código con la línea: nombre(); Así, este se ejecutará completo y no continuará ejecutando las siguientes líneas, del programa “task main()”, hasta que el bloque subrutina se termine, donde se seguirá leyendo desde la línea siguiente a la donde se llamó a la subrutina.

13 Operadores y Comparadores Lógicos Al programar un robot, es necesario programarlo para que tome decisiones, estas decisiones se basan en un conjunto de datos que se procesan y dicen que hacer o que no hacer. A esto se le llama lógica de programación. La lógica de programación solo reconoce dos valores, verdadero o falso, que dependiendo del lenguaje tienen diferentes significados. Para NQC todo numero que sea 0 se considerará falso, y todo numero diferente de 0 se considerará verdadero. Por lo anterior, el numero 5, 6, 99, 1556, etc. Tendrán el mismo valor de verdad (Verdadero).

14 Operadores y Comparadores Lógicos ![x]NoEntrega el valor de verdad del elemento x negado [x]==[y]IgualCompara el valor de x e y como números y entrega Verdadero si son iguales [x]&&[y]YCompara el valor de x e y por su valor lógico y entrega Verdadero si son iguales ||OCompara x e y por su valor lógico y entrega Verdadero si tan solo uno de los 2 es verdadero !=DiferenteCompara el valor numérico de x e y entregando verdadero si los valores son diferentes

15 Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/05/2007


Descargar ppt "Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/05/2007."

Presentaciones similares


Anuncios Google