Introducción a la Programación

Q-SYS Control 101 Training (Spanish) : Introducción

3 ) Comunicación Básica

12m 57s

4 ) Block Controller

0m 0s

6 ) Control de Flujo

33m 58s

7 ) Término del Entrenamiento Control 101

1m 24s

Descripción de la lección

Introducción a la Programación 9m 48s

Comienza por (re)conocer a tu instructor para estos videos y descubre las varias formas en las que puedes programar tu diseño de Q-SYS para realizar ciertas tareas.

Transcripción de video

Introducción a la Programación 9m 48s
0:08
Bienvenido al entrenamiento de Control de Q-SYS. Mi nombre es Luis Peña y yo seré tu instructor en
0:13
esta serie de videos, en los cuales veremos mucho más a fondo el uso de Q-SYS como una plataforma
0:18
de control muy robusta. Si estás viendo esto, espero que te sea muy familiar el uso del software
0:23
Q-SYS Designer, ya que no me detendré a explicar conceptos básicos de navegación conforme
0:27
avancemos. También espero que te sientas cómodo construyendo el diseño y procesamiento de un
0:33
sistema de audio. Por ahora, dejemos el audio a un lado y enfoquémonos en el control.
0:38
Este curso tiene la intención de ser un requisito en línea para asistir la clase presencial de control de
0:44
Q-SYS. Sin embargo, puedes aprender mucho de estos videos aún si no estás planeando asistir a
0:50
alguna de nuestras sesiones presenciales.
0:52
El objetivo de estos videos es que conozcas con fluidez las formas en las que Q-SYS puede usarse para
0:58
programar y de esta manera, con lo aprendido en clase, puedas conectar equipos de terceros reales.
1:03
Pero aún con estos videos en línea, es probable que no tengas algún hardware para realizar pruebas,
1:09
así que iremos lo más lejos que el modo Emulación nos lo permita (¡Afortunadamente, eso es muy
1:14
lejos!).
1:15
Para ayudarte, hemos creado una hoja de trabajo que incluye ejercicios para que los realices después
1:20
de ciertas lecciones. Descarga este recurso en la sección que sigue inmediatamente a este video o
1:26
puedes visitar la pestaña “Downloads and Resources en cualquiera de los videos. La primer parte de esta
1:32
hoja de trabajo será usada en este Entrenamiento de Control 101 para que pruebes tus habilidades
1:37
de programación mientras avanzas, y la segunda mitad será usada si asistes al curso de Control 201
1:43
presencial.
1:45
Control es un tema muy amplio que cubre muchas cosas. Por ahora te debe ser familiar el cómo
1:50
construir una Interfaz de Control de Usuario, así como añadir elementos desde tu diseño a una
1:55
pantalla táctil para dar al usuario el control del sistema. En el gran ámbito de control dentro de
2:02
Q-SYS, ¡esto es muy fácil! Usar los controles dentro del panel de control de un componente para que
2:08
haga lo que está diseñado a hacer es sencillo – ¡y en realidad, esto te lleva muy lejos!
2:13
Pero, ¿qué pasa si quieres que los botones interactúen entre ellos, o potencialmente hacer cosas
2:18
diferentes dependiendo de la configuración de estos controles? Para llevar esto a cabo, necesitamos
2:23
explorar el mundo de la programación. De hecho, hay muchos caminos que puedes seguir en Q-SYS
2:28
Designer con respecto a la programación y hablaremos de cada uno de ellos discutiendo sus pros y
2:33
sus contras.
2:35
Otras cosas más complejas dentro del ámbito de control, incluyen el usar Q-SYS para controlar otros
2:41
dispositivos fuera de la arquitectura de Q-SYS. Hay incontables tipos de dispositivos que pueden ya
2:47
sea, enviar o recibir señales de control.
2:50
Estas pueden ser simples conexiones a botones análogos o a potenciómetros, o comandos
2:55
unidireccionales enviados a controladores de iluminación de terceros, o comunicación bidireccional
3:01
entre matrices de video, televisores, sistemas de seguridad… etc. Si es controlable, Q-SYS puede
3:07
controlarlo.
3:09
En un nivel extremamente alto, toda la programación tiene características comunes universales – y
3:14
una vez que las aprendas, podrás verlas jugando en tu vida diaria también. Programar es el proceso
3:19
que pasa entre un pensamiento y una acción. Por ejemplo, aquí hay un experimento que me gustaría
3:24
que hicieras por mí. ¿Serías tan amable de … aplaudir? (UN APLAUSO) ¿Lo hiciste? Veamos qué fue lo
3:30
que pasó.
3:31
Envié una solicitud a tu cerebro – “Aplaude”. Tu cerebro tomó una serie de decisiones en fracciones
3:37
de segundo y el resultado fue que aplaudiste (APLAUSO) o no. Mi comando fue la entrada – algo que
3:44
ha entrado al sistema que requiere una reacción.
3:46
La salida es un comando a tus manos. En medio, el proceso de toma de decisiones está lleno de
3:52
sentencias condicionales, funciones y referencias a parámetros externos, de los cuales puedes
3:57
siquiera tenías en cuenta.
3:59
Por ejemplo, ¿quieres seguir las instrucciones o no? ¿Estás en un ambiente en el cual sería
4:04
conveniente aplaudir de repente o no? Hagamos referencia a una variable externa que indique si hay
4:11
algo en tus manos que te evite aplaudir.
4:14
Luego una función comparativa decidirá si tu deseo de realizar el comando es más grande que el
4:20
inconveniente de tirar lo que tengas en la mano. El deseo de hacerlo puede anularse por una variable
4:26
global de cuántas manos tienes en realidad.
4:31
El deseo de no hacerlo puede anularse por mi referencia subliminal al video juego Bioshock, que
4:37
podría obligarte a realizar cualquier comando que contenga las palabras “Serías tan amable”.
4:42
Todos estos tipos de sentencias condicionales suceden en un instante y el resultado final es una
4:47
salida – en este caso, se inicia una función diciéndote que aplaudas o si las condiciones de
4:54
satisfacción no se cumplen, entonces el sistema permanece sin cambios.
4:59
Entender el flujo de estas sentencias condicionales, referencias a variables, parámetros y funciones, a
5:05
qué nos referimos por entrada y salida – este es el esqueleto de la programación.
5:10
Nuestros cerebros lo hacen de forma automática, por lo que debe parecer de sentido común decirlo,
5:16
pero para programar una computadora (ABRIR COMPU), tienes que considerar cualquier posibilidad,
5:20
y diseñarla lógicamente para ello. Las buenas noticioas es que no importa qué método uses para
5:26
programar, estos conceptos fundamentales serán verdaderos para cualquier tarea que quieras
5:31
completar. Solo necesitas ser capaz de dividirlo en pequeñas piezas identificables, y te enseñaremos
5:36
cómo se ven cada una de esas piezas.
5:39
En este curso, vamos a mostrarte tres diferentes métodos que puedes usar para programar: Control
5:44
Components, Scripting con Lua y el Control por Bloques. Cada uno tiene sus propias ventajas y
5:51
desventajas y vamos a ir cambiando constantemente entre estos tres métodos a lo largo de este
5:57
curso para que puedas comparar sus métodos entre sí.
6:00
Los Control Components te permiten manipular de una forma sencilla controles dentro de Q-SYS para
6:06
interactuar entre ellos, además de aplicar algunas funciones básicas que comparan estados de
6:11
múltiples controles, efectúan diferentes opciones basados en una entrada en particular y compuertas
6:17
lógicas para encender o apagar.
6:20
Los Control Components son geniales para interacciones sencillas, o para decidir entre dos opciones.
6:26
Sin duda puedes aventurarte a usarlos en escenarios más complicados, pero eventualmente
6:31
terminarás topando con pared y necesitarás de una herramienta más robusta.
6:35
Scripting es la otra cara de la moneda. Con scripting puedes llevar a cabo casi cualquier cosa, pero
6:41
tienes que saber cómo escribir un script en un lenguaje en particular para que esto suceda.
6:46
El editor de Control Script en Q-SYS te llevará a un espacio vacío de trabajo en color negro donde
6:52
puedes escribir código, específicamente en el lenguaje de programación Lua. Necesitarás
6:57
comprender las reglas de sintaxis de Lua así como los complementos específicos de Q-SYS que hemos
7:03
hecho en la base de datos de Lua para poder llevar a cabo cualquier cosa.
7:07
No hay forma de que este curso te enseñe todo lo de Lua desde cero, pero te enseñaremos algunas
7:11
cosas básicas. Si aprendes cómo escribir en Lua, puedes programar interacciones complejas con
7:17
dispositivos de terceros que estén conectados en la red o en los puertos seriales, puedes hacer
7:22
arreglos y temporizadores, tienes la habilidad de analizar cadenas complejas; realmente, tu límite
7:29
será tu experiencia en codificar. Ahora, eso parece un gran paso entre los Control Components y el
7:34
componente de Script de Control, y es también donde entra nuestra tercer opción – El Block
7:40
Controller (Control por Bloques).
7:42
El Block Controller es una herramienta de codificación visual que está diseñada para que puedas
7:47
utilizar bloques que se conectan entre sí, y que transformarán el resultado en un script útil. Esto
7:53
significa que puedes llevar a cabo muchas cosas que Lua puede hacer, pero sin conocer exactamente
7:59
los protocolos del lenguaje y sin cometer errores de sintaxis.
8:03
Necesitas conocer algunos de los principios básicos de cómo los lenguajes de codificación trabajan
8:08
para poder construir con el Block Controller, y te mostraremos cómo aplicar ese conocimiento.
8:13
Una vez más, no hay manera de que te volvamos un experto en estos tres métodos solo con ver estos
8:19
videos. Nuestro objetivo es que te sientas cómodo con cada uno de los métodos, te enseñaremos
8:25
cómo pueden llevarse a cabo algunas acciones comunes usando los tres métodos y con suerte
8:31
inspirarte a que explores por tu cuenta. Después de algunos de estos videos te pediremos que vayas
8:36
a tu hoja de trabajo del Entrenamiento de Control para que completes un ejercicio, pero siéntete
8:41
libre de pasar más tiempo que el del ejercicio forzando los límites de cada proceso del que hablemos.
8:48
Un poco de trabajo casero antes de iniciar – algunas de las herramientas que usaremos como el Block
8:53
Controller y los componentes de scripting se encuentran aquí en la Librería del Esquemático
8:57
(Schematic Library). Para enviar un diseño que contenga algunos de estos componentes necesitarás
9:03
comprar una licencia de Q-SYS con tu amigable representante de ventas de QSC.
9:08
Puedes construir y probar en modo Emulación tanto como quieras, pero una vez que sea tiempo de
9:12
conectarte a un procesador Core real, asegúrate de que tengas instalada la licencia de Scripting
9:18
Engine.
9:19
Ok, empezaremos explorando este primer método, los Control Components. Obviamente el Scripting
9:25
y el Block Controller tienen mucho en común, así que veremos esos juntos más tarde, pero primero
9:31
pasemos un poco de tiempo con los Control Components. Así que, tómate un descanso, respira
9:36
profundamente y prepárate para profundizar en este Entrenamiento de Control de Q-SYS. Continua
9:42
con el siguiente video en cuando estés listo.