【问题标题】:Update parameter value in switch block according to the value of a constant block during simulation in Simulink在 Simulink 仿真期间根据常量块的值更新 switch 块中的参数值
【发布时间】:2017-05-16 10:55:06
【问题描述】:

这就是我想要做的事情

这是模型:

我想将模拟中的阈值参数值更改为常量块值的函数。 (即 0.4 * 常量块值的值)

这是我想在模拟过程中更改的参数:

我可以在仿真过程中轻松更改常量块的值,但我希望开关块的阈值同时更改。

【问题讨论】:

    标签: matlab simulink


    【解决方案1】:

    您可以使用额外的关系运算符块来做到这一点。

    所以有一个测试,针对threshold_signal > 0.4*1,它通过 0 或 1。然后根据该信号是否大于 0.5 来触发您的开关以拆分两种情况。

    【讨论】:

    • 非常感谢,但是有没有办法在不添加额外块的情况下动态更改阈值(即常数值 = sp,阈值 = 0.4 * sp,我可以更改 sp 所以阈值值会改变)
    • 如果,比如说,sp = 100,您只需将0.4*100 放在开关块的输入框中,Simulink 就会将其评估为40。如果您从 Matlab 脚本运行变量,则可以有一个工作区变量 sp = 100 并在块参数框中键入 0.4*sp。这有帮助吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多