ComLAB/Conformación del sistema de transmisión
◀ sección anterior | sección siguiente ▶

Para agregar elementos al lienzo desde la paleta de herramientas es suficiente arrastrar el elemento deseado (o una copia del mismo si no se quieren perder los recursos de la paleta CTRL+C, CTRL+V) y descomentarlo para que se ejecute durante la simulación del sistema (por esta misma razón es importante que los elementos de la paleta de herramientas estén comentados y así no tengan efecto en la simulación). Una vez descomentados, los elementos dejarán de mostrarse con trazos grises pálidos y en su lugar se representan con trazos oscuros y nítidos (sin la marca %
).
Configuración de un bloque

Cada elemento deberá además configurarse adecuadamente, ajustando sus parámetros, para que realice las operaciones deseadas. Las Figuras 3a y 3b muestran la configuración de dos de estos bloques; uno de ellos con máscara que ofrece información adicional acerca del funcionamiento del bloque y de la configuración de los parámetros, y otro sin máscara[notas 1]. Se ha realizado una integración entre los contenidos desarrollados en glossaLAB y los bloques del comLAB de modo que pulsando el botón de ayuda (Help) se accede a páginas de glossaLAB que clarifican los conceptos y técnicas involucradas, incluyendo a menudo clarificación del código mismo, como puede se puede ver en el ejemplo de la Figura 4.

Para introducir un elemento en el lienzo deberá 1.º) asegurarse de que no esté comentado (es decir, sin la marca %
y mostrado con trazos nítidos), 2.º) llevarse al lugar que le corresponde en la cadena de transmisión y unir los elementos entre sí, de modo que la salida de un bloque (representada con una punta de flecha saliente) quede unida con la entrada de otro bloque (representada con una punta de flecha entrante). Para realizar esa unión: basta posicionar el cursor en la salida de un bloque pulsando el botón derecho y desplazar el puntero hasta la entrada del bloque correspondiente (si se hace una pulsación simple el interfaz ofrece mediante una flecha azul una sugerencia de vinculación al puerto de entrada más próximo que bastaría pulsar).
Conexión entre bloques

Una vez establecidas las conexiones apropiadas entre los elementos de la cadena de transmisión (simbolizados mediantes trazos continuos no coloreados), es conveniente ejecutar la actualización del modelo (barra superior de herramientas: DEBUG > Update Model
). Al hacerlo se podrán ver las dimensiones de los bloques de señal que concatenan cada uno de los bloques, a la vez que se puede obtener información acerca de si la configuración ha incurrido en algún error de dimensionamiento que haga incompatibles las salidas y entradas de bloques consecutivos. Cuando se realiza esta operación el modelo del sistema pasa de estar representado mediante trazos oscuros (como en la Figura 5.a) a trazos coloreados con indicación de las dimensiones de entradas y salidas de cada bloque (si tuviéramos fuentes de información caracterizadas por diferentes frecuencias de muestreo, se representaría en rojo las partes del sistema afectadas por las fuentes con máxima frecuencia de muestreo y el resto en otros colores; pero en nuestro caso será siempre rojo[notas 2]).

Bloques compuestos por susbsistemas
Una de las formas de escalar la complejidad de los sistemas simulados es subsumir bloques dentro de otros bloques de orden superior, que podemos configurar de forma conjunta. Para el desarrollo de las actividades aquí previstas, comLAB cuenta con dos de estos bloques compuestos, el codificador uniforme y el reconstructor uniforme. Si posicionamos el cursor sobre uno de estos bloques y pulsamos el botón derecho se desplegará un menú en el que podemos elegir la opción de abrir el bloque en otra pestaña (Open in new tab). La Figura 6 muestra la visualización ofrecida en dicha pestaña en la que se muestran los bloques que componen el cuantificador uniforme.

Merece la pena detenernos un instante en esta composición, ya que afectará al modo en el que debe realizarse la configuración del sistema. El primer bloque realiza una multiplexación de los canales que llegan al codificador, que serán dos en el caso de la señal de música, y uno en el caso de la señal de voz. La salida de este bloque unidimensional, en nuestra cadena de transmisión, consiste en una secuencia de muestras de la señal original (donde cada muestra se almacena como un valor numérico tipo double, es decir, números de punto flotante de doble precisión). A continuación se encuentra el cuantificador uniforme propiamente dicho, que transforma cada muestra en una palabra de código binario –conformado según el procedimiento implementado en el código de MATLAB cuant_u.m
– y almacenado como un valor entero de 16 bits sin signo (tipo uint16). Finalmente el serialización transforma la secuencia de valores enteros (uint16) en una secuencia binaria de valores booleanos, lo que aumenta la dimensión de la secuencia en un factor de b bits, que es el único valor de configuración del bloque compuesto.
El reconstructor hará las operaciones antagónicas para devolver la señal a su formato original. Primero convirtiendo la secuencia binaria en una secuencia de valores enteros (uint16) que se reconstruirán para generar una secuencia de valores reales (tipo double). Finalmente un demultiplexor separará la secuencia de valores reales en varias secuencias paralelas en función del número de canales indicados. Obsérvese que a diferencia del cuantificador (donde la dimensión de la entrada [n x c] indica implícitamente el número de canales, c), en la señal que llega al reconstructor no hay información relativa al número de canales (podrían ser 1, 2 ó más), por esta razón éste es uno de los parámetros de configuración del reconstructor.
La especificación de los parámetros de configuración de cada uno de estos bloques se hace de forma conjunta sobre el lienzo del sistema de transmisión, garantizando que sea consistente con la señal y con el resto de bloques. Una vez realizada la simulación se indicarán las dimensiones de cada trama de datos intercambiada entre los bloques.
Notas
- ↑ En la situación actual todos los bloques ofrecidos disponen de máscara y explicación acerca de su funcionamiento y del sentido de los parámetros. No obstante, cuando se introduce un nuevo bloque y antes de que esté plenamente operativo lo normal es trabajar sin máscaras e introducir los valores de los parámetros como se ve en la Figura 3.b.
- ↑ En una versión futura de comLAB el color cambiará al modificarse la velocidad de muestreo como, de hecho, ocurre al introducir los módulos de diezmado e interpolación. Para ello se debe realizar un intercambio entre bloques de la cadena de transmisión del parámetro frecuencia de muestreo empleado por el modelo para la visualización de colores.