DigiShow 教程3 信号映射

 
 

三种信号类型

Analog, Binary, Note

各种信号在不同的设备和软件间传来传去,它们流经 DigiShow 时会都被识别成三种基本类型:

Analog 模拟量

比如:灯光的亮度、声音的强度、舵机的旋转角度、控台上的推杆数值

模拟信号量可随时间不断起伏变化,在示波器中图像如图

在信号条中:
- 模拟信号都会被显示成蓝色系,并带有这个波形图标
- 显示当前通道类型和通道号 ( 如:DMX - Ch1 )
- 显示信号量的当前百分比数值
- 显示信号量的当前绝对数值
- 移动推杆即可改变模拟量的输出

模拟量信号的数值范围:
- 在 DMX 调光通道中,模拟量的绝对数值范围通常是 0 ~ 255
- 在 MIDI 控制通道中,模拟量的绝对数值范围通常是 0 ~ 127
- 在 MODBUS 控制通道中,模拟量的绝对数值范围通常是 0 ~ 65535

在不同的通道中, 模拟量绝对数值的取值范围会有所不同, 但它们都可以用0~100%之间的百分比数值来表示。

Binary 开关量

比如:按键的状态、继电器的开合、传感器的触发信号

开关信号通常也被称为数字信号,可在 ON / OFF 两种状态间切换,在示波器中图像如图

在信号条中:
- 开关信号都会被显示成红色系,并带有这个方波图标
- 显示当前通道类型和控制描述
- 显示开关量的当前状态
- 按下 TAP 开关量状态变为 on,松开 TAP 开关量状态变为 off
- 拨动推杆即可改变开关量的输出(需保持 HOLD 打开状态)

在图例中的开关量被用来控制启动预置 Preset 1,当开关量由 off 变化为 on 时,即触发对应的操作

Note 音符

Note 并非只是音乐信号,还有更多用途 ( 如灯光表达、传感器信号 )

音符信号可在 ON / OFF 两个状态间切换,Note ON 时会带有一强度值,在示波器中图像如图

在信号条中:
- 在信号条中,音符信号都会被显示成绿色系,并带有这个波形图标
- 显示当前通道类型、通道号和音符号(如:MIDI Note - Ch1 - C1)
- 显示音符信号的当前状态
- 按下 TAP 发送 Note On,松开 TAP 发送 Note Off
- 移动推杆位置设定音符强度

Note 就是一个带强度反馈的开关信号, 对应在乐器演奏时:
- Note On 即指按下琴键的时刻(信号数值上升时)
- Note Off 即指松开琴键的时刻(信号数值下降时)

在图例中的音符信号被输出到了电脑上的 MIDI 总线, 一个 C1 音符被发送到了 MIDI 1 通道

 
 

Signal Mapping 信号映射

信号映射,即将一对或多对输入输出信号进行关联,运行时将输入信号自动转换为输出信号的过程。
 

信号映射实例

下面我们来做一个实例,将由 MIDI 键盘输入的 Note 音符信号映射输出到灯具上的 DMX 调光信号:

  1. 将 MIDI 键盘连接到电脑上的 USB 端口,
    将 ENTTEC DMX USB Pro 适配器连接到电脑的另一个 USB 端口上,
    ENTTEC 适配器的 DMX OUT 端口连接灯具。

如果你手头上还没有 ENTTEC DMX USB Pro,也可以使用 DigiShow 在未实际连接适配器和 DMX 灯具的情况下完成此实例。

  1. 启动 DigiShow LINK 软件,然后单击窗口右上角的 Interface Manager (接口管理器) 按钮。

  2. 在出现的 “接口管理器” 对话框中,选择 “MIDI” 标签栏,然后单击 + 按钮创建一个标有 “MIDI 1” 的新接口,在其中选择 “输入” 模式,和你的 MIDI 键盘型号。

  3. 选择 “DMX” 标签栏,然后单击 + 按钮创建一个标有 “DMX 1” 的新接口。完成所有操作后关闭接口管理器对话框。

  1. 现在让我们尝试创建一个信号链接来连接您的 MIDI 键盘输入和 DMX 灯光输出。单击窗口左上角的 + 按钮,左侧列表中将添加一个空白信号条。 为此,您还需要在窗口右侧区域内选择输入信号的来源和输出信号的目标,以及它们之间的映射转换参数。

  2. 单击 Select Source (选择信号来源) 下拉菜单,在其中选择你的 MIDI 键盘,并将输入参数设置为 “Channel 1 (通道 1)” “MIDI Note (MIDI 音符)” “C3”,然后单击 Apply (应用) 按钮。

  3. 单击 Select Destination (选择信号目标) 下拉菜单,在其中选择 DMX,将输出参数设置为 “Dimmer (调光)” “Channel (通道1)”,然后单击 Apply (应用) 按钮。

  1. 完成 “输入信号来源” 和 “输出信号目标” 的选择之后,信号条内会出现输入输出信号的实时状态等显示信息。
    单击窗口顶部栏中的 ▶︎ 播放按钮,即可启动设备联机,并激活信号映射。 此时,当您按下 MIDI 键盘上的 C3(中央C)按钮时,DMX 通道1 的灯光变化将被同步触发。

  2. 修改 Input-output Mapping (输入输出信号映射) 和 Output Envelop (输出信号包络参数) 中的设置,可以实时更改映射变换的效果。 例如,将 Attack (渐入) 设置为 300 毫秒,将 Release (渐出) 设置为 700 毫秒,会使灯光变化呈现淡入和淡出。

通过这种方式,就能在 DigiShow 中添加更多的信号链接,实现更多对输入输出信号间的映射。

 
 

信号映射参数

信号映射是将一个输入信号链接到另一个输出信号上,根据这两个信号的类型差异,通常会允许用户设定一些特定的信号映射和转换参数。

本节中会尽数列举各种类型信号间映射的参数。由于情况众多,可按需查阅。

开关量 ▶︎ 模拟量

将一个开关量输入信号链接到一个模拟量输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在开关量状态为 ON 时会被反转为 OFF。

  2. Output Range 的下限设定:
    当输入开关量为 OFF 时,按此处设定的下限数值来输出模拟量。

  3. Output Range 的上限设定:
    当输入开关量为 ON 时,按此处设定的上限数值来输出模拟量。

  4. Invert Output Signal 选项:
    用于反转输出信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。勾选此选项后,信号条中手动控制信号输出的推杆也会左右翻转。

  5. Output Smoothing 设定:
    用于使输出模拟量变得更平滑,以实现 fading in / fading out 的效果。此参数是一个毫秒值,设定需要经过这个时长后输出信号才会达到目标输出值。

开关量 ▶︎ 音符

将一个开关量输入信号链接到一个音符输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在开关量状态为 ON 时会被反转为 OFF。

  2. Output Range 的上限设定:
    当输入开关量切换为 ON 时,触发输出 Note On,并按此处所设定的上限数值作为音符强度。

  3. Output Range 的下限设定:
    当输入开关量切换为 OFF 时,触发输出 Note Off,并按此处所设定的下限数值作为音符强度。

开关量 ▶︎ 开关量

将一个开关量输入信号链接到另一个开关量输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在开关量状态为 ON 时会被反转为 OFF。

  2. Invert Output Signal 选项:
    用于反转输出信号的值,如在开关量状态为 ON 时会被反转为 OFF。勾选此选项后,信号条中手动控制信号输出的推杆也会左右翻转。

模拟量 ▶︎ 开关量

将一个模拟量输入信号链接到一个开关量输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。

  2. Output Range 的下限和上限设定:
    当输入模拟量小于下限数值或大于上限数值时,输出开关量都为 OFF;当输入模拟量在上下限之间时,输出开关量为 ON。

  3. Invert Output Signal 选项:
    用于反转输出信号的值,如在开关量状态为 ON 时会被反转为 OFF。勾选此选项后,信号条中手动控制信号输出的推杆也会左右翻转。

模拟量 ▶︎ 音符

将一个模拟量输入信号链接到一个音符输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。

  2. Input Range 的输入上下限和 Output Range 的输出上下限设定:

当输入模拟量的数值由小于 “输入下限” 变化为大于 “输入下限” 的设定数值时,将会产生并输出一个 Note On 信号;而此 Note 的强度值会由输入模拟量此时的数值大小决定。

当输入模拟量的数值处在 “输入上下限“ 中间时,所输出的 Note 强度值会对应在 “输出上下限“ 中定义的数值范围内。当输入模拟量大于 “输入上限“ 数值,所输出的 Note 强度值将始终保持 ”输出上限“ 的设定数值。

当输入模拟量的数值再次回落到小于 “输入下限” 时,将会产生并输出一个 Note Off 信号。

模拟量 ▶︎ 模拟量

将一个模拟量输入信号链接到另一个模拟量输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Invert Input Signal 选项:
    用于反转输入信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。

  2. Input Range 的输入上下限和 Output Range 的输出上下限设定:
    当输入模拟量的数值处在 “输入上下限“ 中间时,输出模拟量将在 “输出上下限“ 中所定义的数值范围内对应输出。输入小于 “输入下限“ 时,输出 “输出下限” 值,输入大于 ”输入上限“ 时,输出 “输出上限” 值。

  3. Zero Output While Reaching Lower (当达到输出下限时输出零值)选项:
    勾选此选项后,当输入小于 “输入下限“ 时,输出值将不再是 “输出下限” 的设定值,而是始终输出 0 。

  4. Invert Output Signal 选项:
    用于反转输出信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。勾选此选项后,信号条中手动控制信号输出的推杆也会左右翻转。

  5. Output Smoothing 设定:
    用于使输出模拟量变得更平滑,以实现 fading in / fading out 的效果。此参数是一个毫秒值,设定需要经过这个时长后输出信号才会达到目标输出值。

音符 ▶︎ 开关量

将一个音符输入信号链接到一个开关量输出信号时,能够由用户设定的信号映射和转换参数包括:

当音符信号输入 Note On 时,开关量信号输出 ON,当音符信号输入 Note Off 时,开关量信号输出 OFF。

  1. On Delay 设定:
    输入 Note On 时,将在设定毫秒数后延时触发输出变为 ON

  2. Hold 设定:
    若设定此参数,开关量输出将保持 ON 状态若干毫秒后自动回落到零

  3. Off Delay 设定:
    输入 Note Off 时,将在设定毫秒数后延时触发输出变为 OFF
    (Hold 和 Off Delay 通常不能同时设定为非零)

  4. Invert Output Signal 选项:
    用于反转输出信号的值,如在开关量状态为 ON 时会被反转为 OFF。勾选此选项后 ,信号条中手动控制信号输出的推杆也会左右翻转。

音符 ▶︎ 模拟量

将一个音符输入信号链接到一个模拟量输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Input Range 的输入上下限和 Output Range 的输出上下限设定:
    当输入音符的强度值处在 “输入上下限“ 中间时,输出模拟量将在 “输出上下限“ 中所定义的数值范围内对应输出。输入音符强度值小于 “输入下限“ 时,输出 “输出下限” 值,输入音符强度值大于 ”输入上限“ 时,输出 “输出上限” 值。

  2. Zero Output While Reaching Lower (当达到输出下限时输出零值)选项:
    勾选此选项后,当输入音符强度值小于 “输入下限“ 时,输出值将不再是 “输出下限” 的设定值,而是始终输出 0 。

  3. Invert Output Signal 选项:
    用于反转输出信号的值,如在模拟量数值为 20% 时会被反转为 80 % 。勾选此选项后,信号条中手动控制信号输出的推杆也会左右翻转。

  4. Output Envelope (输出信号包络参数):
    输入音符后,将触发改变模拟量信号的输出值,并遵循 AHDSR 包络设定。

收到输入音符后 DigiShow 将自动触发改变所链接输出模拟量信号的值,并遵循 Output Envelope (输出信号包络参数) 中的 AHDSR 设定:

  1. On Delay 设定:
    设定 Note On 延时若干毫秒后才触发响应。

  2. Attack (渐入) 设定:
    设定在 Note On 触发输出信号量时需经历若干毫秒后才会爬升到输出上限。

  3. Hold (保持) 设定:
    设定输出信号量将保持在输出上限位置若干毫秒,然后再回落。

  4. Decay (衰减) 设定:
    设定输出信号量回落需要经历的毫秒数。

  5. Sustain (延持) 设定:
    输出信号量回落后将继续保持在一定水平只到 Note Off,此设定值是保持输出的信号量数值占最高输出时的信号量数值的百分比。

  6. Release (渐出) 设定:
    设定 Note Off 触发输出信号量回落到输出下限( 或零值 )所需经历的毫秒数。

  7. Off Delay 设定:
    设定 Note Off 延时若干毫秒后才触发响应。

音符 ▶︎ 音符

将一个音符输入信号链接到另一个音符输出信号时,能够由用户设定的信号映射和转换参数包括:

  1. Input Range 的输入上下限和 Output Range 的输出上下限设定:

当输入 Note 的强度值处在 “输入上下限“ 中间时,所输出的 Note 强度值会对应在 “输出上下限“ 中定义的数值范围内。当输入 Note 的强度值大于 “输入上限“ 数值,所输出的 Note 强度值将始终保持 ”输出上限“ 的设定数值。当输入 Note 得强度值小于 “输入下限“ 数值,所输出的 Note 强度值将始终保持 ”输出下限“ 的设定数值。

 
 

Virtual Pipe 虚拟管道

虚拟管道是 DigiShow 提供的一种额外的通信接口,它可以方便在不同的信号链接间复制传递信号,以便更灵活地组织信号链接表。

顾名思义,DigiShow 在与硬件设备或外部软件通信过程中,虚拟管道中的信号并不真实存在。但在信号链接表中,它可以与任何真实信号对接。

用户可以在虚拟管道中任意定义自己的 Analog、Binary 或 Note 类型的信号量。它们可以出现在各个信号链接的输入或输出端。当位于信号条输出端的虚拟管道信号量数值发生改变时,在其他信号条输入端上的同名信号量会立即触发同步更新。

虚拟管道实例

我们用实例来解释一下虚拟管道的用途。在此工程中,通过虚拟管道中的一个模拟量通道和一个开关量通道,来实现对多路灯光的联控。

  1. 新建三个信号条 Light 1, Light 2, Light 3, 各包含一个控制灯光的 DMX 输出信号端。此时可推动信号条中的推杆来单独为每一路灯光调光。

  2. 再新建信号条 Dimmer All,将其输出端以及 Light 1 ~ 3 的输入端都设置为 Virtual Pipe, Analog, Chanel 1。此时可推动 Dimmer All 中的推杆来同时为三路灯光同步调光。

  1. 再新建信号条 Switch All,将其输出端以及 Dimmer All 的输入端都设置为 Virtual Pipe, Binary, Chanel 1。此时可拨动 Switch All 中的推杆来全开/全关各路灯光。

虚拟管道中的模拟量信号

在 DigiShow 中,通常各种接口中的模拟量信号都有它特定的数值范围,而虚拟管道中的模拟量信号的数值范围是可以由用户自己来决定的:

虚拟管道模拟量信号的默认数值范围是 0 ~ 65535
点击“齿轮”按钮,可以在弹出的选项设置面板中修改 Value Range (数值范围)

在本例中,我们把该信号的数值范围调整为 0 ~ 255,
这样就能和 DMX 通道中的信号数值范围保持一致了

  1. 默认的最大数值为 65535
  2. 调整后的最大数值 255

Remote Pipe 远程管道

开启远程连接服务后,运行在不同电脑上的两个 DigiShow 程序还可以共享虚拟管道中的信号量。不同电脑上的 DigiShow 信号条中的同名信号量可以始终保持数值同步。

  1. 主电脑
    进入 Interface Manager 的 Pipe 配置页,将 Remote Link Service 选定为 Enabled 以启用远程连接服务,来允许另一个 DigiShow 程序共享此虚拟管道。
    使用 Enabled (multiple) 模式将允许多个远程 DigiShow 程序或第三方程序*的接入。

  2. 从电脑
    在另一台电脑上的 DigiShow 程序中,将 Interface Manager 中虚拟管道的模式设置为 Remote Pipe,并将 Remote IP 设置为主电脑的 IP 地址。
    之后两台电脑上的两个 DigiShow 就可以共享同一个虚拟管道了。

多个虚拟管道

在新建 DigiShow 工程中默认已包含了一个虚拟管道,之后用户也可以再自行创建多个虚拟管道,以方便将不同用途的虚拟信号量分别管理。

  1. 在 Interface Manager 中的 Pipe 配置页中可以创建多个虚拟管道接口。为了之后方便区分,用户可以在 Comment 字段中填写一些描述信息。

  2. 之后在为信号链接配置输入输出端的接口时,就能分清楚了。

 
 

本课小结