前回はXcosの配線、クセが強いのうなどと文句を垂れながらも配線練習しました。今回は信号源を練習してみます。Xcosの信号源は多数あり、まずは「シンプルで自立した」信号源の皆さまデス。逆に言えば外の様子に忖度することなく、勝手に連続した信号を垂れ流しつづけるだけの皆さま。我が道を行きます。
※「ブロックを積みながら」投稿順 index はこちら
※動作確認にはWindows 11のパソコン(64bit)上にインストールしたScilabの以下バージョンを使用しています。
Scilab 2024.0.0
今回練習のXcosブロック
今回練習のブロックは以下のパレットブラウザ画面のSources(信号源)に並んでいるもののいくつかです。
列挙すると以下のとおり
-
- CONST、定数ブロック
- GENSIN_f、正弦波生成ブロック
- RAMP、ランプ関数ブロック
- STEP_FUNCTION、ステップ関数ブロック
- PULSE_SC、パルス生成ブロック
どれも「分かり易い」ブロックばかりです。しかし「1」の定数ブロックなど、今回使ってみた CONST以外に CONST_m、CONST_f と合計3種類もあったりします。その「コマケー」差は後で確かめたいと思いますが、今回はパス。
今回実験のフロー
上記5個の信号源をそのままスコープに接続し波形をながめてみるだけのもの。
スコープは SCALE_CMSCOPEという多信号入力に対応したスコープで、自動スケーリングに対応して「良きに計ら」ってくれるハズのもの。5個の入力信号に対応できるように設定変更した上で、デフォルト値のうち「7番」のグラフ色のインパクトが薄く老眼の目に見えにくかったので変更したもの。
クロック設定はデフォルトのままです。
各信号源ブロックの設定
-
- 定数ブロック
-
- サイン波生成ブロック
周波数、位相とも 角度の単位はラジアンです。周波数 1 rad/s ってことは周期約6.28秒、ヘルツ単位の周波数0.16Hzくらいってことかい。
-
- ランプ関数ブロック
-
- ステップ関数ブロック
-
- パルス生成ブロック
設定みるとPWM的な波形を生成するのに適するみたいです。
波形の確認
シミュレーションを行って波形を確認してみました。こんな感じ。
小ネタ、DUMMYブロックの必要性
先ほどは触れなかったのですが、実験フローの片隅にDUMMY CLASSなる謎の箱あり。
上記のDUMMY CLASSを取り除いてシミュレーションを行うとその効果が分かります。こんな感じ。
なにやら不穏な赤バッテン印とともに上記のようなエラーメッセージを受け取ります。ただし、上記のような単純なフローであればシレっと波形は出力されます。どうも上記のような信号源とスコープ直結みたいな単純すぎる仕事を「ソルバ」様にお願いしようとすると文句を言われる気がします。知らんけど。
そこでおまじないとしてDUMMY CLASSを配置すると、あーら不思議、上記のメッセージは消えます。大人の事情?