0
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 17

dSPACEでアクチュエータにセーフティをかける

Posted at

1. はじめに

アクチュエータに定格以上のエネルギを印加すると,例えば人工筋肉のような変形するアクチュエータなどは破裂する可能性があり大変危険です.
そのため印加する電圧や空気圧の指令値に上限を設けたいときがあると思います.
ロジックを2つ紹介します.
定格がわかっているものはSimulinkで実装して,柔軟に制限したいときはControlDeskで実装するのがいいと思います.

2. ロジック1:Simulinkで制限

信号に上限下限を設定したい場合はSaturationブロックを使用します.
以下のモデルを構築し実行すると,Pulseの振幅1に対して,Saturation下限0.0,上限0.5を通すと信号が0.5に制限されのを確認できます.

  • Pulse
    Amplitude: 1
    duty ratio: 50%
    delay: 5s
  • Saturation
    Lower limit: 0.0
    Upper limit: 0.5
    スクリーンショット 2024-12-24 152036.png

黄:入力 青:Saturationのout
スクリーンショット 2024-12-24 153154.png

さらに,ControlDeskでMultiState Display Instrumentと組み合わせると上限を超えたら仮想LEDを緑→赤にするなどすると直感的に状態を把握できます.
TODO: 後日記載

3. ロジック2:ControlDeskで制限

Simulinkモデルを変えなくてもInstrumentのプロパティを変えるだけで入力制限できます.
Numeric Input InstrumentのProperties > Numeric Input > Range check

  • Range check modeをDisabled -> Enabled
  • Use variable rangeのチェックを外す
  • Range minとRange maxのグレーアウトが外れるのでそこに下限と上限を設定

スクリーンショット 2024-12-24 160705.png

0
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
0
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?