BlockWerk 文档
⊕

Switch

Logic

Switch 方块根据一路选择控制信号(Selector)在两路数据输入信号之间进行二选一切换。当选择信号满足设定的阈值判定条件时(默认 ≥threshold\ge \text{threshold}),方块输出第一路输入信号(u1u_1);否则输出第二路输入信号(u2u_2)。该方块在条件信号路由、安全联锁保护逻辑以及手动/自动控制模式切换中具有不可替代的作用。

在 BlockWerk 中仿真

浏览器即开即用的交互式仿真环境 — 无需安装,由 WebAssembly 强力驱动。

在 BlockWerk 中仿真 →

数学模型

Switch 方块实现如下模型:

y(t)={u1(t),usel(t)≥thresholdu2(t),usel(t)<thresholdy(t) = \begin{cases} u_1(t), & u_{\text{sel}}(t) \ge \text{threshold} \\ u_2(t), & u_{\text{sel}}(t) < \text{threshold} \end{cases}

其中:

  • u1(t)u_1(t) 为第一路数据输入信号(上方端口)
  • usel(t)u_{\text{sel}}(t) 为选择控制输入信号(中间端口)
  • u2(t)u_2(t) 为第二路数据输入信号(下方端口)
  • threshold\text{threshold} 为可配置的门限阈值

输入与输出

Direction ID Label 类型 Status
→ In selector Selector number Required
→ In in1 If ≥ 0 number Required
→ In in2 If < 0 number Required
← Out out Output number Output

参数

参数 Label 类型 默认值 描述
threshold Threshold number 0
criteria Criteria select u2 >= threshold

使用示例

手动 / 自动控制模式切换

在操作员手动设定值与自动 PID 控制器输出之间无缝切换:

手动给定 (u1)   ──┐
模式选择开关 (usel) ─┤ Switch → 执行机构
自动 PID 输出 (u2) ──┘

故障安全停机联锁

当故障报警信号触发(>0> 0)时,系统立刻切换至安全预设值:

正常运行信号 (u1)  ──┐
报警触发信号 (usel) ─┤ Switch → 机器系统
安全归零常数 (u2)  ──┘

说明与最佳实践

  • 零延时: 纯组合逻辑无缝切换,在当前积分步长内瞬时生效。
  • 端口布局规范: 请注意左侧三个输入引脚定义:数据 1(顶部)、控制选择端(中部)、数据 2(底部)。
  • 抗毛刺: 只要控制信号稳定跨越阈值,切换过程就不会产生寄生振荡。

相关模块

  • Relay: 带迟滞回差的双稳态继电器,可抑制带噪控制信号的反复弹跳
  • Comparator: 生成 0 或 1 的二值逻辑判决信号
  • Mux: 将多路标量信号复用打包为向量信号