114967 ランダム
 HOME | DIARY | PROFILE 【フォローする】 【ログイン】

日々の成長

日々の成長

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

Keyword Search

▼キーワード検索

Profile

よゐこ3

よゐこ3

Calendar

Rakuten Card

Favorite Blog

まだ登録されていません

Comments

けい@ 返事ありがとうございます。 お返事ありがとうございます。 振り子の…
よゐこ3@ Re:参考になりました。 どういたしましてです。 まさか見てくれ…
けい@ 参考になりました。 参考になりました! 次は、アニメーショ…
masashi25@ コメント失礼します☆ ブログ覗かせてもらいましたm(__)m もし…

Freepage List

Headline News

2009.12.21
XML
カテゴリ:scilab

scilabの使い方第3回目です☆

今回からは僕の本業であるXcosというものを使います。

前回、scilabでsin波のグラフを描きました。

あれはsin波のデータを用意しておいて、plot2dという命令でそのデータをプロットして描く、という作業でした。

Xcosというツールは、scilabに付属しているシミュレーションツールです。

シミュレーションといっても、言葉はよく聞くものの、実際どういうものかわからないと思います。

なので、百聞は一見にしかずという言葉どおり、実際にやってみましょう☆

前回と同じsin波をXcosで描いてみます。

1)scilabを起動したら、メニューの「アプリケーション」-「Xcos」を選択します。

scilab7.jpg

すると、次のようなパレットブラウザーと、

scilab8.jpg

無題と書かれた真っ白な画面の2つが出てきます。

scilab9.jpg

パレットブラウザーのことを「パレットウィンドウ」、

無題と書かれた真っ白な画面を「エディタウィンドウ」と呼びます。

2)次は、パレットから「sinusoid generator」というブロックをクリックし、

それをエディタウィンドウの上にドラッグドロップします。

scilab10.jpg

すると、次の画面のようになると思います。

scilab11.jpg

このようにしてブロックをエディタウィンドウに配置していきます。

3)同じく、パレットで「CLOCK_c」というブロックがあるので、それもエディタウィンドウに配置します。

scilab13.jpg

4)次は、パレットの下の方にタブがあるので、「減る」と書かれたタブをクリックします。

(※「減る」は英語版の「sinks」を訳したものだと思います。実際何かを減らすためのブロックではありません。)

すると、「CSCOPE」というブロックがあるので、それもまたエディタウィンドウに配置します。

scilab12.jpg

5)以上の3つのブロックの配置ですが、後々のためにも下の画面のように配置するといいでしょう♪

scilab14.jpg

6)次はこれらのブロックをつなげていきます。

sinusoid generatorの右に出てる矢印からCSCOPEの左側の矢印へ

CLOCK_cの下側に出てる矢印からCSCOPEの上側の矢印へ

色が異なっているのがわかると思います。

黒い色が信号の経路

赤い色が時間の経路

という感じです。

だから時計のブロックから赤い矢印が出ているわけです。

sinusoid generatorはsin波を作るブロックで、生成したsin波の信号を黒い矢印から出力している、ということです。

オシロスコープのようなCSCOPEのブロックは左側から入ってきたsin波の信号を上側の時計に合わせて、描きますというものです。つまり、sin波を入力するだけでは描く時間間隔が設定されていないので描いてくれないし、時間を入力するだけではもちろん描いてくれません。ブロックを矢印でつなぐことで、どんな信号をどんな時間間隔で描けばよいかを教えているわけです。

scilab15.jpg

7)さて、これだけでシミュレーションの土台は完成です。この程度なら慣れれば1分もかかりませんね。

ではこのシミュレーションを開始するには、右矢印のアイコンがあるのでそれをクリックするか、「シミュレーション」-「開始」をクリックしてください。

すると、次のような画面になると思います。

scilab18.jpg

左側にグラフィックウィンドウが作られて、sin波がどんどん描かれていってるはずです。

完成♪・・・と喜んでばかりではいられず、これではいつまでたってもシミュレーションが終わりません(゜o゜;;

なので、エディタウィンドウの停止アイコンか「シミュレーション」-「停止」をクリックしてシミュレーションを中止しましょう。

なぜシミュレーションが延々と続いたかというと、実は初期設定ではシミュレーションを行う時間がめちゃめちゃ長く設定されてるんです。

なので、シミュレーション時間の設定を行います。

8)「シミュレーション」-「セットアップ」を選ぶと次のような画面が出てきます。

scilab16.jpg

この画面の一番上の[Final integration time]というところがシミュレーションを実行する時間になってます。

初期設定はなんと100000になってます!笑

なので、これを10に変更します。

9)これだけでも大丈夫なんですが、せっかくなので、sin波の表示をもっと見やすくしましょう。

CSCOPE(オシロスコープのアイコン)をダブルクリックすると次のような画面が出てきます。

scilab17.jpg

この中の[Ymin][Ymax][Refresh period]の3つをそれぞれ

[Ymin]=-2

[Ymax]=2

[Refresh period]=10

に変更しましょう。[Ymin]と[Ymax]はわかる人も多いと思いますが、それぞれY軸の最小値、最大値です。[Refresh period]はX軸の最大値みたいなものです。

10)さて、ようやく完成です!シミュレーション開始してみると、次のような画面がでていれば成功です☆

scilab19.jpg

Xcosはこんな感じで、ブロックをいくつか置いて、できる波形を見たり、いろんな計算を行うことができるんです。

パレットにいろんなブロックがあるなと感じてもらえたでしょうか?いろんなブロックを用いて複雑な計算とかもできるんです。

これくらいなら普通にscilabで描いたらいいんですが、これのメリットは視覚で理解できるところです。エディタウィンドウのブロックを見るだけで、このシミュレーションはsin波をオシロスコープで測定しているシミュレーションだ、というのが一目でわかりますよね。

シミュレーションってこんな感じなんです笑

また次回もXcosのシミュレーションをやっていきます♪






お気に入りの記事を「いいね!」で応援しよう

Last updated  2009.12.21 22:46:57
コメント(3) | コメントを書く
[scilab] カテゴリの最新記事


■コメント

お名前
タイトル
メッセージ
画像認証
別の画像を表示
上の画像で表示されている数字を入力して下さい。


利用規約に同意してコメントを
※コメントに関するよくある質問は、こちらをご確認ください。


参考になりました。   けい さん
参考になりました!
次は、アニメーションブロックの追加する方法をお願いします。 (2010.10.22 15:46:49)

Re:参考になりました。   よゐこ3 さん
どういたしましてです。
まさか見てくれてる人がいるとは思ってなかったので、最近ほったらかしでした。
アニメーションブロックというと、デモであるボールが動くようなやつでしょうか?それとなるとかなり難しいですね。
それとも単純にx,yを入力するとそれに対応したような円を描くっていうものなら簡単ですよ。 (2010.10.25 19:16:49)

返事ありがとうございます。   けい さん
お返事ありがとうございます。
振り子のようなアニメーションを表示したいと思っています。scicosでそれをする本を読んだのですが、xcosでは出来ないので困っています。もしご存知でしたらご教授願います。 (2010.10.29 18:27:06)


© Rakuten Group, Inc.