信号データの作成と編集
信号エディターを使用して、複数のシミュレーションを整理できる入力信号を作成および編集します。次に、シミュレーション用に信号データを MAT ファイルに保存するか、ルートレベルの端子にマッピングできます。信号エディターでは、既定では timeseries
形式で信号データが作成されます。信号エディターには、次の方法でアクセスできます。
関数
signalEditor
— 信号エディターはコマンド ラインから起動します。ルート Inport マッパーから — 新しい信号データ用の MAT ファイルを作成するには、[信号] 、 [新規 MAT ファイル] を選択します。既存のシナリオから既存の信号データ ファイルをリンクして、そのファイル内の信号を編集するには、[信号] 、 [MAT ファイルを編集] を使用します。
Signal Editor ブロックから
信号エディターは MAT ファイルでのみ機能します。
信号は、以下の方法で操作できます。
複数のデータセットに含まれる複数の信号を作成および編集する。信号エディターでは、既定では
timeseries
形式のデータが作成されます。信号表記を使用して、MATLAB® 式を使用するより複雑な信号を作成する。単純な MATLAB 式については、[作成と挿入] ダイアログ ボックスを使用するか表形式の領域で手動で入力できます。
既存のシナリオを使用して、編集および作成可能な既存のデータセットと信号を取得する。
多次元信号を作成および編集する。
登録されたカスタム ファイル タイプとしてインポートされた信号を編集する。詳細については、カスタム ファイル タイプのインポートを参照してください。
信号データの編集時には、次のことが可能です。
表形式の編集または MATLAB を使用して、信号データを変更する。
マウスまたはマルチタッチによる編集を使用して信号データをグラフィカルに変更する。
名前、内挿、単位プロパティなどの信号プロパティを変更する。
信号をドラッグ アンド ドロップして、バスとデータセットの信号階層を変更する。
信号表記と変数を使用して信号データを置換する。
あるいは、外部ソースからデータをインポートして信号エディターで編集することもできます。詳細については、Signal Builder ブロックと Simulink Design Verifier 環境からの信号データのリンクを参照してください。
信号データをグラフィカルに作成および編集するには、マウスまたはマルチタッチ動作を使用したフリーハンドの信号データの作成を参照してください。
ルート Inport マッパーの信号エディターとその他の信号エディターの違い
一般に、信号エディターのユーザー インターフェイスは、アクセス方法にかかわらず、同じです。ルート Inport マッパーの信号エディターにおける相違点は次のとおりです。
[ファイル] セクションの [保存および同期] と [保存] コマンドで保存し、ルート Inport マッパーに同期する。
[挿入] セクションの [シナリオ] コマンドには常に [モデルからのシナリオ] オプションがある。
モデル名で関数を起動すると、関数 signalEditor
の信号エディターのユーザー インターフェイスの [挿入] セクションに [モデルからのシナリオ] オプションが表示されます。
テーブル編集データのサポート
信号エディター ユーザー インターフェイスは、Simulink® がサポートする編集可能なすべての信号データ型をサポートします。
マウス、キーボードおよびタッチスクリーンのショートカット
編集操作:
操作 | キーボード | マウス | マルチタッチ |
---|---|---|---|
点の挿入 | Ctrl+P |
| タップ |
ラインの挿入 | Ctrl+L |
| パンおよびピンチ |
描画 | Ctrl+D | クリックおよび描画 | パン |
点の選択 | Ctrl+T |
すべての領域を選択するには、ダブルクリック | パンおよびピンチ すべての領域を選択するには、ダブルタップ |
点の移動 | Ctrl+M |
| タップして移動 |
点のデータの変更 |
| ||
ライン上の点を連続的に削除 |
| ||
3 回のマウス クリック | 3 回のタップ | ||
x 軸に沿って展開 | Ctrl+ マウス移動 | x 軸のプライ | |
y 軸に沿って展開 | Shift+ マウス移動 | y 軸のプライ |
ズーム操作:
ズームまたはパンの種類 | クリックするボタン |
---|---|
T 軸および Y 軸に沿ってズーム インします。 | ![]() |
時間軸に沿ってズーム インします。アイコンを選択した後で、グラフ上でマウスをドラッグして拡大する領域を選択します。 | ![]() |
データ値軸に沿ってズーム インします。アイコンを選択した後で、グラフ上でマウスをドラッグして拡大する領域を選択します。 | ![]() |
xy へのズーム イン時は x のみにズーム インします。 | Ctrl を押している間は xy にズーム イン |
xy へのズーム イン時は y のみにズーム インします。 | Shift を押している間は xy にズーム イン |
グラフからズーム アウトします。 | ![]() |
プロットをグラフ全体に表示します。アイコンを選択した後でグラフをクリックすると、プロットがグラフ全体に拡大されます。 | ![]() |
グラフの視点を上下左右に移動します。アイコンを選択します。グラフ上で左マウス ボタンを押したまま、表示するグラフの領域にマウスを移動します。 | ![]() |
信号名と階層順序の変更
[シナリオおよび信号] セクションでは、信号名と階層順序の変更、信号の複製の作成および信号の削除を実行できます。Simulink は信号名の先頭と末尾の空白を無視します。
信号名を変更するには、名前をダブルクリックして変更します。
信号の単位または内挿を変更するには、プラス記号をクリックし、[単位] または [内挿] チェック ボックスをクリックします。
[単位] 列と [内挿] 列でペインが更新されます。
[単位] 列に適切な単位式を入力します。推奨される単位式のリストについては、Allowed Units を参照してください。
[内挿] 列で、ドロップダウン リストから、
[線形]
または[ゼロ次ホールド]
を選択します。メモ
内挿は、信号エディターのユーザー インターフェイス内における信号プロットのみに影響します。
階層で信号の順序を変更するには、信号をドラッグ アンド ドロップします。たとえば、信号をバスにドラッグ アンド ドロップできます。
あるいは、[調整] セクションの [上に移動] ボタンと [下に移動] ボタンを使用することもできます。
信号をコピーして、元の信号の下に貼り付けるには、その信号を右クリックして [信号の複製] を選択します。
代わりに、[調整] セクションの [複製] ボタンを使用することもできます。また、複製する信号の既定のプロパティを調整することもできます。詳細については、同じプロパティをもつ信号の作成を参照してください。
信号をコピーして、階層のどこかに貼り付けるには、[コピー]、[貼り付け] を選択します。
同じプロパティをもつ信号の作成
事前定義された同じタイプの信号を作成するには、[調整] セクションの [複製] ボタンを使用します。事前定義された信号タイプを変更するには、[既定] アイコン をクリックします。[挿入の既定のプロパティ] ダイアログ ボックスが表示されます。
データ型 — ドロップダウン リストから信号のデータ型を選択します。
列挙値 —
[Enum]
データ型を選択した場合、このパラメーターが表示されます。列挙型のクラス名を入力します。同じ整数値が複数回含まれている列挙型クラスを定義する場合は、たとえば次のようになります。
classdef(Enumeration) hEnumColors_duplicateValues < Simulink.IntEnumType enumeration Red(118) Yellow(-14) Blue(90) Green(87) White(-14) Black(198) Brown(90) Pink(118) Purple(90) end methods (Static = true) function retVal = getDefaultValue() retVal = hEnumColors_duplicateValues.Blue; end end end
信号エディターは最初の列挙値 (
Red (118)
) を正準値として処理し、同じ整数値118
を基とする後続のすべてのインスタンスを列挙名Red
と同じように扱います。つまり、Pink
はRed
と等しくなります。内挿 — ドロップダウン リストから、
[線形]
または[ゼロ次ホールド]
を選択します。単位 — 適切な単位式を入力します。推奨される単位式のリストについては、Allowed Units を参照してください。
次元 — 信号の次元数を入力します。
信号タイプ — リストから
[実数]
または[複素数]
を選択します。変数の型 — ドロップダウン リストから、
[Timeseries]
(既定の設定)、[Timetable]
、[Logged timeseries]
、[Logged timetable]
を選択します。ログ記録された
timeseries
オブジェクトとログ記録されたtimetables
オブジェクトは、Value
プロパティのデータ型がtimeseries
またはtimetable
であるSimulink.SimulationData.Signal
オブジェクトです。バス オブジェクト — ドロップダウン リストから、次元を定義するバス オブジェクトを選択します。[バス オブジェクト] パラメーターを既定値
<object name>
のままにした場合、信号エディターは空のバスを追加します。次元 — バス オブジェクトの次元数を入力します。
多次元信号の追加と編集
多次元信号を追加するには、以下のいずれかのオプションを使用します。
[挿入の既定のプロパティ] ダイアログ ボックスの [次元] プロパティを変更してから、[挿入] 、 [空白の信号] を使用して新しい空白の信号を挿入します。多次元の空白の信号については、1 より大きい次元を入力します。
[作成と挿入] ダイアログ ボックスの [データ] パラメーターに
[(1:10)' (1:10)']
などの多次元信号データを入力します。
信号の [プロット/編集] チェック ボックスをクリックすると、表形式の領域に、信号が次元ごとに列に分けた形式で表示されます。表形式の領域でデータを個別に編集することも、[置換] ボタン をクリックして MATLAB 式によって信号を置換することもできます。[信号データの作成と置換] ダイアログ ボックスは、[作成と挿入] ダイアログ ボックスで新しい式を挿入するときと同じように使用します。詳細については、MATLAB の式と変数を使用した信号の作成を参照してください。
ヒント
信号を置換するとき、新しい信号の信号次元と実数/複素数は、置換前の信号と一致していなければなりません。
たとえば、2 つの列と 1 ~ 10 の時間を持つ信号データを作成するには、以下のようにします。
信号エディターで [信号] 、 [信号の作成] を選択します。
2 つの列と 1 ~ 10 の時間を持つ信号データを入力します。
時間 —
[1:10]
データ —
[(1:10)' (1:10)']
[信号の挿入] をクリックします。
階層が新しい信号データで更新されます。
新しい信号を展開し、新しい信号データの [プロット/編集] チェック ボックスをクリックします。この信号に関連するプロットと表形式データを確認します。
ヒント
データが期待したとおりにプロットされない場合、[ズームとパン] セクションの [ウィンドウに合わせる] ボタンを使用します。多次元信号の場合は、編集中の列データに対して適切なプロットが選択されていることを確認します。
データは表内で直接編集できます。
または、データを新しい式で完全に置き換えることもできます。その場合、[置換] ボタンをクリックし、[信号データの作成と置換] ダイアログ ボックスに新しい時間範囲とデータを入力します。
信号内のデータの操作
この例では、リンクされたシナリオ内の信号に対してデータを追加および削除する方法について説明します。操作するモデルとデータを作成するには、シナリオへの信号の追加を参照してください。
信号エディターの [シナリオおよび信号] セクションで、信号
ts
の [プロット] チェック ボックスをクリックします。いくつかのデータを信号
ts
に追加します。行追加アイコン
をクリックし、いくつかの信号を追加します。他の信号間に信号行を追加するには、前の信号をクリックして行追加アイコンをクリックします。
完了したら、[適用] をクリックします。[適用] をクリックすることで、プロットが更新されます。
時間 20 の行を信号から削除します。
20
を選択して、をクリックします。
あるいは、
ts
のすべての信号データを信号表記で定義された信号に置き換えるには、[置換] ボタンをクリックし、[信号データの作成と置換] ダイアログ ボックスを使用して新しいデータを定義します。
精度を確保するためにグリッドへのスナップを使用したランプの描画
この例では、キャンバスでいくつかの点を選択してランプ信号を作成する方法について説明します。
[信号エディター] タブで、[信号] 、 [信号の描画] を選択します。
信号データの値を水平方向および垂直方向の線に揃えるには、[グリッドに X をスナップ] および [グリッドに Y をスナップ] を選択します。
移動とズームはグリッドへのスナップ設定にも従います。
キャンバスで 3 つの点を追加します。
相互に水平な 2 つの点
他の信号の右に一定の角度で配置される 1 つの点
[信号プロパティ] セクションで、[名前] の信号名を
Ramp
に変更して Enter キーを押します。信号を信号エディターに追加するには、[挿入] セクションの
をクリックします。
信号エディターのメイン ウィンドウに戻って信号が追加されたことを確認するには、
をクリックします。
描画した信号のデータを信号エディターで観察するには、階層で信号名
Ramp
の [プロット/編集] チェック ボックスをオンにします。
変更の保存とルート Inport マッパー ツールへの送信
信号とシナリオの追加および変更が完了したら、[保存および同期] ボタンを使用して変更を MAT ファイルに保存します。信号エディターは、そのデータをルート Inport マッパー ツールにも送信します。
ルート Inport マッパー ツールにシナリオが読み込まれると、ルート Inport マッパー ツールは新しいデータを使用して更新します。
ルート Inport マッパー ツールにマッピング済みのシナリオがあり、変更がそのマッピングに影響を与える場合、ルート Inport マッパー ツールはシナリオのマッピングを解除します。
参考
Signal Editor | signalEditor
| signalBuilderToSignalEditor
| linspace