1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

dSPACEAdvent Calendar 2024

Day 16

ControlDesk条件切り替えアルゴリズム

Posted at

1. はじめに

アクチュエータのON/OFFとか出力する条件をワンクリックで切り替えたいときって結構あると思います.
制御対象の提示力を弾性モード(F=kx)から粘性モード(F=Cx')に変更するなどなど...
そんなときに使う小技です.

2. Simulinkモデル

(1) 2値を切り替える

ON/OFFを切り替えるだけならSwitchブロックを使います.
真ん中の端子がif文の条件になっており,trueなら上側,falseなら下側のルートを出力します.
u>0の条件にして0ならOFF, 1ならONという使い方をよくします.

(2) 3値以上を切り替える

Switchブロックの組み合わせでも実装できないことはないですが,
Multiport Switchブロックを使用すると省スペースで可読性も高いので便利です.

3. ControlDeskレイアウト

各ブロックの条件端子に入力するconstantブロックとボタン系のInstrumentをリンクします.

(1) Radio Button Instrumentを配置
(2) 条件端子に接続しているConstantブロックをアタッチ
(3) Properties > Radio Button > Buttons右側の...をクリック
Buttonsウィンドウが出現
(4) 左側のSelect a node to editで編集したいボタンを選択
(5) 右側のPropertiesで値を変更

  • Text: ボタンの表示名
  • Value: 押されているときに出力する数値
    例) ON/OFFの場合
    • Button 1 [1]
      Text: ON
      Value: 1
    • Button 2 [2]
      Text: OFF
      Value: 0

例) 3値以上の場合

  • Button 1 [1]
    Text: Elastic
    Value: 1
  • Button 2 [2]
    Text: Viscous
    Value: 2
  • Button 3 [3]
    Text: Off
    Value: 3
    (6) 見た目を変える
    Properties > Radio Button > Radio button styleをRadio button -> Modern buttonにするとその名の通りモダンになります.
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?