このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
診断特徴デザイナーへのデータのインポート
診断特徴デザイナーは、測定値のアンサンブル データを処理し、そのデータを生成したマシンの healthy
や faulty
などの状態を示す特徴を抽出するための対話型ツールです。データは加速度計、圧力計、温度計、高度計、電圧計、タコメーターなどのセンサーを使用するシステムでの測定値から得ることができます。アプリで多面的データセットを整理し管理するための主要単位は、データ アンサンブルです。"アンサンブル" は、さまざまな状態下でシステムを測定またはシミュレートすることによって作成されたデータセットのコレクションです。アンサンブル内の各行は "メンバー" です。アンサンブルの各メンバーには、Vibration
や Tacho
など、同じ "変数" が含まれています。
診断特徴デザイナーを使用する際の最初の手順は、MATLAB® ワークスペースからアプリにソース データをインポートすることです。データは table、timetable、cell 配列、または行列からインポートできます。また、アプリが外部のデータ ファイルを操作できるようにする情報の含まれた、アンサンブル データストアをインポートすることもできます。ファイルには、実際の、またはシミュレートされた時間領域測定データ、スペクトル モデルまたはスペクトル table、変数名、状態変数と動作変数、および前に生成した特徴を含めることができます。診断特徴デザイナーはすべてのメンバー データを単一のアンサンブル データセットに組み合わせます。このデータセットでは各変数が、個々のメンバーの値をすべて含む集合的信号あるいは集合的モデルとなります。
データをインポートする前に、外れ値や欠損値の削除などの前処理によるクリー二ングが済んでいなければなりません。詳細については、状態監視と予知保全のためのデータの前処理を参照してください。
インポート処理の際、インポートする変数を選択して変数の型を指定し、作業対象とするアンサンブルを作成するための他の操作を実行します。[インポート] をクリックすると、アプリは指定した内容を適用し、選択したデータを含むアンサンブルを作成します。次の図は、インポートの全体的なフローを示しています。
一度データをインポートした後、後続セッションで再度インポートする必要はありません。初期データ アンサンブル、および保存前に計算したすべての派生変数と特徴を両者とも保存するために、セッションを保存します。MATLAB ワークスペースにデータセットをエクスポートして、後続セッションでのインポートが可能なファイルとしてデータを保存することもできます。
アンサンブル メンバーの数が大量である場合は、アプリでデータおよび利用可能な特徴の確認を始める際に、代表的なメンバーのサブセットを作成することを検討してください。アプリは対話型であるため、大量のメンバーをインポートするとパフォーマンスが遅くなる可能性があります。代わりに、比較的小規模なデータセットで特徴の作成とランク付けを行ったあと、元のデータセットに対し計算を繰り返すコードを生成することができます。
予知保全におけるデータ ソース、アンサンブル、および変数の型の詳細については、状態監視と予知保全のためのデータ アンサンブルを参照してください。
ソース データの要件
信号の場合、アプリは、メンバーごとに同じ独立変数、データ変数、および状態変数が含まれる個々のメンバーの table
配列、timetable
配列、cell 配列、または数値行列を受け入れます。スペクトル データの場合、アプリは個々のメンバーの table
配列または idfrd
オブジェクトを受け入れます。この表では、アンサンブル メンバー内の変数のデータ要件を説明しています。
入力項目 | 内容 | メモ |
---|---|---|
信号データ | timetable、table、cell 配列、または数値配列 | 時間ベースのデータでは、timetable が推奨されます。 |
信号の独立変数 (IV) | double、duration 、または datetime | 時間に基づく信号であっても、あるいは消費量やデューティ比など別の IV に基づく信号であっても、各信号変数ではすべてのメンバーの IV が同じ型である必要があります。 メンバー データが行列に格納されている場合、インポートしている信号セット全体に対して適応される IV は 1 つのみでなければなりません。 データが等間隔の時間でサンプリングされており、記録されたタイムスタンプがない場合、インポート処理中に等間隔のタイムラインを作成できます。 |
スペクトル データ | 数値 (double) table または idfrd オブジェクト | 各 スペクトルは行列からインポートできません。 |
状態変数 (CV) | スカラー — 数値、string、cell、または categorical | 状態変数は table、timetable、cell 配列のデータと共にインポートできますが、行列のデータと共にインポートすることはできません。 |
特徴量 | スカラー — 数値、string、または cell | 以前にアプリ外部あるいはアプリ自体で計算した特徴量をインポートできます。 |
行列 | 単一の IV およびその IV を共有する任意数の信号を表す列を含む純粋な数値配列。スペクトルの格納はできません。一般に、状態変数や特徴量は格納できません。 | 行列に変数名を格納することはできません。 データセットにスカラーのみが含まれ、信号が含まれていない場合は、状態変数および特徴を行列からインポートすることができます。 |
データ メンバーは個別に、あるいはすべてのデータ メンバーを含むアンサンブルとしてインポートすることができます。このアンサンブルは次のいずれかにできます。
table
配列、cell 配列、または行列を含むアンサンブル table。table の行は個々のメンバーを表します。table、cell 配列、または行列を含むアンサンブル cell 配列。cell 配列の行は個々のメンバーを表します。
外部に保存されているファイルを操作するために必要な情報を含む、
fileEnsembleDatastore
またはsimulationEnsembleDatastore
オブジェクトなどのアンサンブル データストア オブジェクト。特にデータ量が多すぎてアプリのメモリに収まらない場合に、アンサンブル データストア オブジェクトを使用します。ただし、計算時の外部ファイルに対する読み取りと書き込みはパフォーマンスに影響します。作業対象とするアンサンブル データストア ファイルの代表的なサブセットを作成するには、subset
を参照してください。状態変数と特徴のみを含むアンサンブル行列。行列の行は個々のメンバーを表します。
信号、状態変数、および特徴のラベル付きデータを含むラベル付き信号セット (
labeledSignalSet
オブジェクト)。
インポート データの整理の詳細については、診断特徴デザイナー用のシステム データの整理を参照してください。
データのインポートに関する一般的なワークフロー
以下の節では、各種データのインポートに関する一般的なワークフローについて説明します。最初のワークフローでは全体的なインポート処理を、その後のワークフローでは、インポート データの形式に固有のバリエーションを中心に説明します。次の表は、ワークフローの事例をまとめています。
インポートのタイプ | まとめ |
---|---|
アンサンブル table | アンサンブル table のインポートを説明するコア ワークフロー (アンサンブルの指定、構成、インポート、アプリでの確認など) |
個々のアンサンブル メンバー | インポート ダイアログ処理でフィルター処理機能を使用し、table や timetable で表現された個々のアンサンブル メンバーをすばやく選択してインポートします。 |
行列 | 行列の列インデックスを使用して変数を特定します。信号ではなく、特徴として行列を代替的に指定します。 |
スペクトル データ | スペクトル データを、idfrd オブジェクト、あるいは周波数値または次数値、対応するデータ値を含む列を持つ table にインポートします。 |
IV を持たない信号 | 仮想 IV の生成により、明示的なタイムスタンプのない信号をインポートします。 |
複数の IV を持つ信号 | 代替 IV の指定により、アプリ内でいずれかの IV を使用して信号を解析できるようにします。 |
アンサンブル データストア | 外部ファイルの操作に関する情報が含まれた、アンサンブル データストアを指定します。 |
ラベル付き信号セット (LSS) のインポート | labeledSignalSet オブジェクトから信号、状態変数、および特徴の情報をインポートします。 |
コア ワークフロー — アンサンブル table のインポート
このワークフローでは、アンサンブル table をアプリにインポートするための手順を示します。
MATLAB ワークスペースへのアンサンブル table の読み込み
MATLAB ワークスペースにアンサンブル table を読み込みます。この例で示すように、ワークスペース変数のブラウザーでデータをプレビューできます。この例では、データセットに時間ベースの信号が 2 つと、faultCode
という名前のスカラーの状態変数が 1 つ含まれています。
アプリを開き新規セッションを開始
コマンド ラインで「diagnosticFeatureDesigner
」と入力してアプリを開きます。次に、[新規セッション] をクリックします。この操作により、[インポート] ダイアログ ボックスが開きます。
[ソース変数] からのアンサンブル table の選択
[データセットをワークスペースから選択] ペインで、[ソース] としてアンサンブル table を選択します。
ソース変数コンポーネントの表示および変数の型と単位の変更
[ソース変数を選択] ペインにはアンサンブルの変数が表示されます。次の例の図で、アプリは時間ベースの信号として変数 Vibration
と変数 Tacho
を特定し、そのそれぞれに変数 Time
と変数 Data
が含まれています。各信号の変数セットの 3 番目の変数、Sample (Virtual)
にはチェックが付けられていません。Sample (Virtual)
では、特にソース データ セットに明示的な IV が含まれていない場合に IV を生成することができます。Sample (Virtual)
の詳細については、時間変数のない信号のインポートを参照してください。
アイコンによって、アプリが仮定する変数の型が特定されます。faultCode
の横のヒストグラムが描かれたアイコンは、特徴を表すものです。特徴と状態変数はどちらもスカラーであり、状態変数が categorical でない限り、アプリは両者を識別できません。変数の型を変更するには、変数名をクリックして [ソース変数のプロパティを構成] ペインで変数プロパティを開きます。次に [変数の型] で、[特徴量] を [状態変数] に変更します。
これで、faultCode
のアイコンには状態変数を表すラベルが描かれるようになります。
信号変数とスペクトル変数については、プロットやアプリ内の他の操作でアプリが使用する単位を変更することもできます。そのためには、信号変数またはスペクトル変数の下位レベル変数リストで、IV またはデータ変数の名前をクリックします。[ソース変数のプロパティを構成] ペインには、変更できる各プロパティについて、オプションのメニューが提示されます。次の例の図では、[ソース変数のプロパティを構成] に Vibration
信号の変数 Time
のプロパティが表示されています。図では、[単位] オプションのメニューから [分] が選択されています。
データ変数のプレビュー
[ソース変数のプロパティを構成] ペインでは、[型]
などの変数プロパティのオプションが提供されるほか、信号変数やスペクトル変数の名前をクリックすると、インポート データのプレビューが表示されます。次の図は、Vibration
データのプレビューを表示した例です。図内のプレビュー ペインには、最初のアンサンブル メンバーの先頭 10 個の Vibration
サンプルに対するソース データが、IV の値、データ、およびサンプル インデックスを含めて表示されています。
プレビュー ペインにはソース プロパティのみが表示されます。プレビュー ペインには、ペインで行うプロパティの変更は反映されません。たとえば、Vibration
信号の単位を秒から分に変更しても、プレビュー ペインにはソースが秒単位で表示されたままとなります。インポートの完了後、アプリは時間データの単位を分に変換して使用します。
アンサンブルの指定内容の確認およびインポートの実行
ダイアログ ボックス下部の [概要] ペインで、アンサンブルの指定内容を確認します。[インポート] をクリックしてデータのインポートを実行します。
アプリへの正常なインポートの確認
[変数] ペインでインポートを確認します。この例では、2 つの信号が [信号] リストに表示されています。状態変数 FaultCode
が [状態変数] リストに表示されます。[変数] ペインの下には、選択した変数に関する追加情報を提供する [詳細] ペインがあります。
[Vibration/Data]
を選択して [信号トレース] をクリックし、データをプロットしてインポートした信号を表示します。次の図に例を示します。データのプロットの詳細については、診断特徴デザイナーでのアンサンブル データのインポートと可視化を参照してください。
個々のメンバーのインポート
このワークフローでは、アンサンブル メンバーの個別のインポートに関する手順を説明します。
インポート処理の開始
個々のメンバー変数を MATLAB ワークスペースに読み込み、アプリを開き、[新規セッション] をクリックします。[データセットをワークスペースから選択] ペインでは、[ソース] メニューにワークスペースにあるファイルのリストが表示されます。以下の例の図には、10 個のメンバー ファイルと 1 つの追加ファイル [sens2]
(これはアンサンブル メンバーではありません) が表示されています。
アンサンブル メンバーの選択
アンサンブル メンバーを表す 1 つの変数を選択します。この例では、[d1]
を選択します。アプリによって、同じ内部変数を含み互換性のあるすべてのワークスペース変数のリストが開かれます。これらの変数の任意の組み合わせを選択することも、[すべて選択] をクリックして一度にすべてを選択することもできます。
個々の timetable のインポート
個々のメンバーが、各時間点に対してスカラー値をもつ timetable としてパッケージ化されている場合は、アプリが timetable 変数を特徴としてではなく信号として解釈するよう [信号として使用] を指定します。
インポート処理の完了
変数を選択したら、残りのインポート手順は、コア ワークフロー — アンサンブル table のインポートと同様です。アプリは、インポートしたメンバーを単一のアンサンブルに組み合わせます。
行列データのインポート
このワークフローでは、個々のメンバー行列からの信号のインポートを説明します。行列のデータをインポートする場合、アンサンブル内の各信号は、1 つの独立変数 (時間変数など) をアンサンブル内のすべての信号で共有する必要があります。行列内の状態変数、特徴量、またはスペクトル データはインポートできません。
インポートする行列の選択およびプレビュー
行列を MATLAB ワークスペースに読み込み、次に [新規セッション] をクリックしてインポート処理を開始します。[データセットをワークスペースから選択] ペインで、いずれかの行列を選択して [すべて選択] をクリックします。行列の場合、このペインには [特徴として使用] オプションも表示されます。このオプションは、行列にスカラーの状態変数と特徴のみが含まれ、信号データが含まれない特殊な場合に適用されます。
行列は数値であるため、アプリは各変数列を列インデックスによって識別します。次の例の図では、4 つのメンバー行列が表示されています。各行列の最初の列には時間を表す IV が含まれ、2 番目と 3 番目の列には振動データとタコメーター データのデータ値が含まれます。アンサンブルの内容をプレビューするには、[ソース変数を選択] ペインで Matrix
行を選択します。
変数の型の確認
アプリは、[Col1]
は単調であるため IV として、[Col2]
と [Col3]
は信号データ変数として解釈します。
単一の時間変数を使って信号を正確に表現できない場合は、インポートする前に行列を table に変換してください。
インポートの完了と確認
[インポート] をクリックしてインポートを完了します。[変数] ペインに目的の信号が含まれていることを確認します。次の図に例を示します。
アプリは行列を 4 つの行列を含むアンサンブル データ セットへとマージします。
このワークフローでは、制限付きでのみ行列をインポートできることを説明しています。変数を名前で特定したり、状態変数や特徴をインポートしたり、独立した信号に対し独立したタイムラインを使用する場合は、インポート前に行列を table または cell 配列に変換します。一連の行列をアンサンブル table に変換する例は、診断特徴デザイナー用の行列データの準備を参照してください。
スペクトル データのインポート
このワークフローでは、スペクトル データをインポートする方法を説明します。スペクトル データは 2 つの形式でインポートできます。
単一のスペクトルの周波数データとスペクトル データがそれぞれ
Frequency
プロパティとSpectrumData
プロパティに格納されたidfrd
オブジェクト周波数データおよびスペクトル データの列を含む table
idfrd
オブジェクトをインポートした場合、アプリはデータ ソースがスペクトルであることを認識し、変数の型 [スペクトル] を既定で使用します。次の図に例を示します。
table のスペクトル データをインポートした場合、アプリは変数の型 [信号] を既定で使用しますが、変数の型 [スペクトル] および [次数スペクトル] を追加オプションとして提示します。次の例の図では、table のスペクトル データのインポートを示します。
周波数情報ではなく次数情報が含まれる次数スペクトルをインポートすることも可能です。次数スペクトルは回転機の解析に役立ちます。各次数は、基準周波数 (プライマリ シャフトの回転周波数など) の倍数となります。次の例の図では、次数スペクトルのインポートを示します。
インポートの完了後、[変数] ペインにはスペクトルが表示されます。次の図に例を示します。
時間変数のない信号のインポート
このワークフローでは、データセットに IV をもたない信号が含まれる場合に、バーチャル IV を生成する方法について説明します。たとえば、信号が等間隔の時間サンプルで測定または生成されており、実際のタイム スタンプのベクトルが含まれない場合などです。アプリは、同じサンプル レートが含まれるバーチャルなタイムラインを生成できます。
データ ソースの選択とソース変数の表示
インポート処理を開始し、インポートするワークスペース変数を選択します。次の例の図では、データ ソースは変数 Vibration
と変数 Tacho
を含む table です。ただし、これらの変数には測定データのみが含まれ、時間情報は含まれていません。ここでも、アプリによって [Sample (バーチャル)]
オプションが提示されます。この場合、データに IV が存在しないため、アプリは自動的にこの変数を選択します。
バーチャル IV のプロパティの表示
バーチャル IV の既定の単位はサンプル インデックスです。この既定の設定を変更するには、[Sample (バーチャル)]
の名前を選択しますが、これにより [ソース変数プロパティ] が開きます。次の例の図では、既定のプロパティが表示されています。
サンプル時間を使用した信号の時間変数の再構成
信号のサンプル時間がわかっている場合、時間変数を再構成することができます。これを行うには、[独立変数名] を任意の名前に、[IV のタイプ] を [時間] に、[単位] を任意の時間単位に、[サンプリング間隔] をサンプル時間に変更します。たとえば、Vibration
と Tacho
のどちらのサンプル時間も 0.001 秒であることがわかっているとします。次の図では、このサンプル時間を Vibration
に設定する方法を示します。これらの設定は Tacho
には影響しないことに注意してください。
必要な IV を再構成したら、インポート処理を完了します。インポートされた信号をアプリでプロットすることで、再構成されたタイムラインを表示できます。次の図は、タイムラインの再構成された Vibration
と既定の IV である Sample
を保持している Tacho
のプロットを示しています。
代替 IV としてのサンプル インデックスの指定
このワークフローでは、時間変数や他の何らかの信号 IV もインポートされる場合に、代替 IV として信号のサンプル インデックスを指定する手順を説明します。
サンプル インデックスを IV として指定
インポートを開始し、インポートするデータを選択します。[ソース変数を選択] ペインで [Sample (バーチャル)]
を選択し、プロパティを表示します。次の例の図ではこの手順が説明されています。この図において、Vibration
では 3 つの下位レベルの変数がすべて選択されています。[ソース変数のプロパティを構成] ペインには、[Sample (バーチャル)]
の既定の IV タイプと単位 (それぞれ [インデックス] と [サンプル]) が表示されています。
サンプル インデックスを含めるすべての変数に対して同じ操作を実行します。インポート処理を完了します。
アプリでサンプル インデックスに切り替え
アプリは、データとともにインポートした IV タイプを既定で使用します。サンプル インデックスに切り替えるには、[オプション] で [インデックス] を選択します。次の図に例を示します。
これで、代替 IV タイプとして [インデックス] を含むすべての信号は、時間値ではなくサンプル インデックスを使用するようになります。データをプロットすると、信号トレースにはサンプル データが使用されます。次の図に例を示します。
アンサンブル データストアのインポート
このワークフローでは、fileEnsembleDatastore
オブジェクトまたは simulationEnsembleDatastore
オブジェクトをインポートする手順を説明します。アンサンブル データストア オブジェクトは、アプリが外部ファイルを操作できるようにする情報を提供します。それらには、読み取る変数、変数の型、およびソース ファイルの場所についての指定が含まれています。アンサンブル データストアのインポートに際して、結果をアプリのメモリ内に格納するか、結果をアンサンブル データストアに書き戻すかを選択できます。アンサンブル データストアの詳細については、状態監視と予知保全のためのデータ アンサンブルを参照してください。
データ ソースの選択とソース変数の表示
インポート処理を開始します。[データセットをワークスペースから選択] ペインで、アンサンブル データストアを選択します。アプリはアンサンブル データストアの SelectedVariables
のプロパティを使用して、表示する変数を選択します。アプリはまた、DataVariables
、IndependentVariables
、および ConditionVariables
の各プロパティを使用して、どの変数がこれらのどの変数の型に属するかを判断します。例の図は、simulationEnsembleDatastore
オブジェクト ens
のインポートを示しています。
上の例の図で、アプリは ens
を次のように解釈しています。
データ変数
Flow
とPressure
は、table から抽出された timetable ベースの変数と同じ形式で表示されています。ens
には、SelectedVariables
プロパティにsimulationEnsembleDatastore
の標準変数SimulationInput
が含まれています。しかし、アプリはSimulationInput
データ形式をサポートしていないため、オレンジの警告アイコンが表示されています。また、アプリは選択を自動的にクリアし、ens.SelectedVariables
からSimulationInput
を削除します。ens.ConditionVariables
に従ってCombinedFlag
が状態変数として表示されています。
アプリによる外部ファイル操作方法の選択
アンサンブル データストアで参照されている外部ファイルをアプリが操作するかどうかを選択できます。[変数の追加選択] ペインで、[ファイル アンサンブルへのデータの追加] を使用して選択を指定します。
このオプションを選択する場合、アプリは外部ファイルを直接操作して、派生変数や特徴などの結果を元のデータと同じフォルダーに書き込みます。
fileEnsembleDatastore
オブジェクトを使用している場合、そのオブジェクトにはデータ構造体に固有の関数write
への参照が含まれている必要があります。simulationEnsembleDatastore
オブジェクトを使用している場合、関数write
は必要ありません。このオプションをクリアすると、アプリはセッション期間中、結果をアプリのローカル メモリに格納します。たとえば、次のような場合にこのオプションを選択します。
少なくとも処理や特徴の生成が終了するまで、ソース ファイルを元の状態のまま維持する。
ソース ファイルに対する書き込み権限がない。
関数
write
がなく、fileEnsembleDatastore
を使用している。ソース ファイルに結果を書き戻す処理が低速である。
セッションの終了時にローカルの結果を保持するには、[セッションの保存] を使用します。結果を
table
として MATLAB ワークスペースにエクスポートすることもできます。ワークスペースでは、結果をファイルに格納したり、アンサンブル データストア コマンドを使用して結果を選択的に統合することができます。
ラベル付き信号セット (LSS) のインポート
このワークフローでは、Signal Processing Toolbox™ の信号ラベラーから LSS (labeledSignalSet
オブジェクト) をインポートする手順を説明します。インポートする信号は、フレーム信号 (セグメント化された信号) ではなく、完全な信号でなければなりません。
データ ソースの選択と内容の表示
インポート処理を開始します。[データセットをワークスペースから選択] ペインで、LSS を選択します。アプリで LSS のラベルが維持され、LSS での変数の役割とそのデータ型に従って、変数が信号、状態変数、および特徴として解釈されます。
[変数] ペインでのインポートされた変数と特徴の表示
[変数] ペインでインポートされた変数と特徴を確認します。インポートされたデータでラベルと変数および特徴の指定が維持されます。
参考
診断特徴デザイナー | table
| timetable
| simulationEnsembleDatastore
| fileEnsembleDatastore
| idfrd
| subset
| labeledSignalSet