Skip to main content

Paso 2: Crear Submódulo "Switch"

El siguiente paso es declarar un módulo para el interruptor de la habitación. Nuevamente, se debe crear una declaración de módulo y un bloque de funciones. Aquí, ambos se llaman Switch, donde la declaración debe ser implementada por el bloque de funciones. La declaración del módulo de Switch no necesita una sección de nivel superior, porque se agregará debajo del módulo Light (descrito más adelante) en ninguna posición de alto nivel. Como es obligatorio para todos los módulos que implementan bloques de funciones, el bloque de funciones Switch tiene que extender AC.Module, también. Para el caso que nos ocupa, el bloque de funciones también implementa una interfaz ISwitch, que tiene que ser creado. Esta interfaz en sí debe implementar la interfaz IModule, que es proporcionado por la biblioteca AC_ModuleBase . Sin embargo, la interfaz ISwitch permanece "vacío": no se declaran propiedades ni funciones.

Además, el interruptor necesita una señal de entrada (probablemente de una fuente externa/interruptor físico) para indicar cuándo se toca. Esta señal se declara en el IO sección utilizando la variable xIn del bloque de funciones que implementa este módulo. Además, se necesita un tiempo de referencia para distinguir las dos funciones del interruptor: Presionar el interruptor durante el tiempo tTimer inicia la función de atenuación - una pulsación más corta solo enciende o apaga la luz. esta variable tTimer (que también forma parte del módulo que implementa el bloque de funciones) se declarará como un parámetro del módulo (sección Parameters), que eventualmente se puede editar fácilmente cuando se usa el módulo.

figura 51. Declaración de submódulo Switch
Declaración de submódulo Switch


Las variables referenciadas xIn y tTimer ambos se definen como entradas del bloque de funciones Switch, donde el parámetro tTimer obtiene un valor predeterminado inicial de 500 ms. Entonces, cuando el usuario presiona el botón Switch más de 500 ms, la luz se atenuará.

figura 52. Declaración en el Switch bloque de funciones
Declaración en el Switch bloque de funciones


Además, las listas de texto y el conjunto de imágenes deben ampliarse para incluir los textos de descripción necesarios de la entrada y el parámetro.

figura 53. Entradas en la lista de texto y el grupo de imágenes
Entradas en la lista de texto y el grupo de imágenes


Paso 3: crea el submódulo "Switch Simple"