メインコンテンツ

slreportgen.report.Signal クラス

名前空間: slreportgen.report

信号レポーター

R2021a 以降

説明

slreportgen.report.Signal クラスのオブジェクトを使用して、信号のプロパティをレポートします。

信号は、Simulink ブロック線図内のブロックおよびブロック線図自体によって表される動的システムの出力です。信号の基礎を参照してください。

メモ

レポートで Signal オブジェクトを使用するには、slreportgen.report.Report クラスまたはサブクラスを使用してレポートを作成する必要があります。

slreportgen.report.Signal クラスは handle クラスです。

クラス属性

HandleCompatible
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

reporter = slreportgen.report.Signal は、slreportgen.report.Signal オブジェクトを既定のプロパティ値で作成します。Object プロパティを設定して、レポート対象の信号を指定する必要があります。その他のプロパティを使用して、レポートされる情報と情報の書式設定をカスタマイズします。

reporter = slreportgen.report.Signal(object)Object プロパティを object に設定します。

reporter = slreportgen.report.Signal(Name=Value) は、名前と値の引数を使用して Signal オブジェクトのプロパティを設定します。複数の名前と値の引数を任意の順序で指定できます。

プロパティ

すべて展開する

レポート対象の信号を表すブロック出力端子。ハンドルとして指定します。信号レポーターは、出力端子のプロパティと端子に接続されているラインのプロパティに関する情報をレポートします。

この信号の Simulink.Signal オブジェクトに関する情報をレポートするかどうか。true または false として指定します。このプロパティが true の場合、信号レポーターは、信号の属性を指定する Simulink.Signal オブジェクトに関する情報を含めます。Simulink.Signal オブジェクトのプロパティは、mlreportgen.report.MATLABVariable レポーターを使用してレポートされます。この信号レポーターの MATLABVariableReporter プロパティを使用して、信号オブジェクト情報の外観をカスタマイズします。信号が信号オブジェクトに関連付けられていない場合は、何もレポートされません。

レポート対象の信号を定義する Simulink.Signal オブジェクトのレポーター。mlreportgen.report.MATLABVariable オブジェクトとして指定します。既定値は、DepthLimit プロパティが 0 に設定された空の MATLABVariable レポーターです。既定のレポーターは、Simulink.Signal オブジェクトに関する情報を単一のテーブルにレポートします。レポートされる情報の外観をカスタマイズするには、既定の MATLABVariable レポーターのプロパティを変更するか、レポーターをカスタマイズした MATLABVariable レポーターに置き換えます。たとえば、次のコードは、MATLABVariable レポーターの PropertyFilterFcn プロパティを使用して Simulink.Signal オブジェクトの特定プロパティのみを表示します。

filterFcnHandle = @(variableName, variableObject, propertyName) ...
~ismember(propertyName, ["Description", "DataType", "Unit"]);
signalRptr.MATLABVariableReporter.PropertyFilterFcn = filterFcnHandle;
CoderInfo プロパティなど、信号オブジェクトの一部のプロパティについては、値もプロパティをもつオブジェクトとなります。プロパティのプロパティを個別のテーブルに表示するには、MATLABVariableReporterDepthLimit プロパティを 0 より大きい整数に設定します。次に例を示します。

signalRptr.MATLABVariableReporter.DepthLimit = 10;

信号プロパティ テーブルのフォーマッタ。mlreportgen.report.BaseTable オブジェクトとして指定します。このプロパティの既定値は、TableStyleName プロパティが SignalTable スタイルに設定された BaseTable オブジェクトであり、これは Signal レポーターの既定のテンプレートに定義されています。テーブルの外観をカスタマイズするには、既定の BaseTable オブジェクトのプロパティを変更するか、そのオブジェクトを独自の BaseTable オブジェクトに置き換えます。BaseTable オブジェクトの Title プロパティにコンテンツを追加すると、生成されたレポートでテーブルのタイトルの前にそのコンテンツが表示されます。

空の値をもつ信号プロパティを表示するかどうか。true または false として指定します。

レポート対象の信号プロパティ。string 配列、または文字ベクトルの cell 配列として指定します。次のプロパティの任意の組み合わせを指定します。

  • Name

  • Description

  • Source

  • Destination

  • NonvirtualDestination

  • DataType

  • Complexity

  • Dimensions

  • Min

  • Max

  • SampleTime

このレポーターのテンプレートのソース。以下のいずれかの方法で指定します。

  • このレポーターのテンプレートを含むファイルのパスを指定する、文字ベクトルまたは string スカラー

  • このレポーターが使用するテンプレートをもつか、このレポーター用のテンプレートを含むテンプレート ライブラリをもつ、レポーターまたはレポート

  • このレポーターが使用するテンプレートをもつか、このレポーター用のテンプレートを含むテンプレート ライブラリをもつ、ドキュメント オブジェクト モデル (DOM) のドキュメントまたはドキュメント パーツ

指定されるテンプレートは、このレポートが追加されるレポーターと同じタイプでなければなりません。たとえば、Microsoft® Word レポートの場合、TemplateSrc は Word レポーター テンプレートでなければなりません。TemplateSrc プロパティが空の場合、このレポーターはレポートの出力タイプで既定のレポーター テンプレートを使用します。

属性:

GetAccess
public
SetAccess
public
NonCopyable
true

このレポーター テンプレートの名前。文字ベクトルまたは string スカラーとして指定します。このレポーター テンプレートは、このレポーターの TemplateSrc プロパティで指定されたテンプレートのテンプレート ライブラリになければなりません。

属性:

GetAccess
public
SetAccess
public

データ型: char | string

このレポーターのハイパーリンク ターゲット。リンク ターゲット ID を指定する文字ベクトルまたは string スカラー、あるいは mlreportgen.dom.LinkTarget オブジェクトとして指定します。文字ベクトルまたは string スカラーの値は LinkTarget オブジェクトに変換されます。リンク ターゲットは、出力レポートでこのレポーターのコンテンツの直前に配置されます。

属性:

GetAccess
public
SetAccess
public

メソッド

すべて展開する

すべて折りたたむ

slreportgen.report.Signal オブジェクトを使用して、信号に関する情報をレポートに含めます。

長い完全修飾クラス名を使用せずに済むように、MATLAB レポートおよび Simulink レポートの API パッケージをインポートします。

import mlreportgen.report.*
import slreportgen.report.*

vdp モデルを読み込みます。

model_name = "vdp";
load_system(model_name);

Simulink レポートを作成します。

rpt = slreportgen.report.Report("signal_example","pdf");

モデルのブロック線図をレポートに追加します。

append(rpt,slreportgen.report.Diagram(model_name));

レポートする信号の端子ハンドルを取得します。

ph = get_param("vdp/x1","PortHandles");
port = ph.Outport;

信号情報の章を作成します。

ch = Chapter("x1");

信号の Signal レポーターを作成し、そのレポーターを章に追加します。

signalRptr = slreportgen.report.Signal(port);
append(ch,signalRptr);

章をレポートに追加します。レポートを閉じて表示します。

append(rpt,ch);
close(rpt);
rptview(rpt);

バージョン履歴

R2021a で導入