メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

MDFアプリケーションのトラブルシューティング

MDFファイルの読み取り時にエラーが発生しました

問題

mdfRead 関数を使用して MDF ファイルからデータを読み取ろうとすると、エラーが表示される場合があります。

考えられる解決策

  • 原因としては、MDF ファイルの形式が不適切であるか、サポートされていない要素が含まれていることが考えられます。MDF ファイルをチェックするために、Vector は MDF Validator ツールを提供しており、Tool Support MDF からダウンロードできます。

  • 考えられるもう 1 つの原因は、MDF ファイルがソートされていないことです。R2019b 以降、ソートされていない MDF ファイルにアクセスすると認識可能なエラーが生成され、mdfSort 関数を使用してファイルをソートできるようになりました。

  • ファイル全体を読み取ることができない場合は、一度に 1 つのチャネルずつデータを読み取ることができます。mdfRead関数をフォームで使用する

    data = mdfRead("MDFFile.mf4",Channel="Chan-Name")

MDFDatastore の読み取り時にエラーが発生しました

問題

read 関数を使用して MDFDatastore からデータを読み取ろうとすると、エラーが表示される場合があります。

考えられる解決策

  • 読み取り対象となるチャネルは、MDF データストアの各ファイル内で同じ名前を持ち、同じチャネル グループに属している必要があります。読み取っているチャネルのデータベース内の MDF ファイル全体で一貫性を確保します。

特定のチャネルが見つかりません

問題

MDF ファイル内で目的のチャネルを見つけて読み取ることができない可能性があります。

考えられる解決策

  • MDF ファイル内のチャネルを識別するには、mdfChannelInfo 関数を使用します。

MDF添付ファイルを保存できません

問題

mdfSaveAttachment 関数は、MDF ファイルに添付されたファイルを保存できません。

考えられる解決策

  • mdfSaveAttachment 関数は埋め込まれた添付ファイルに対してのみ機能します。外部ファイルは既にディスク上にあるため保存されません。

  • 添付ファイルが存在しない場合は、MDF ファイルのプロバイダーに確認してください。

配列チャネル構造を読み取れません

問題

Vehicle Network Toolbox™ は配列チャネル構造をサポートしていません。

考えられる解決策

  • これらのチャネルを読み取るには、データを再パッケージ化する合成関数を記述する必要があります。

MIMEおよびCANopenデータを読み取れません

問題

MIME または CANopen データを使用して MDF ファイル チャネルを読み取ると、エラーが発生します。

考えられる解決策

  • MIME および CANopen データは Vehicle Network Toolbox ではサポートされていません。

表の列名がチャネル名と一致しません

問題

MDF ファイルを読み込む場合、出力 timetable の列名はファイル内のチャネル名に対応しますが、同一ではない場合があります。テーブル列名は MATLAB 変数名に準拠する必要があるため、サイズと文字数を制限するように変更されます。サポートされていない文字のほとんどはアンダースコアに変換されます。

考えられる解決策

  • 返される timetable では、チャネルの順序が保持されます。したがって、数値インデックスを使用してテーブル内のデータにアクセスできます。

  • チャネルの元の名前は、timetable のプロパティに埋め込まれます。以下に例を示します。

    m = mdf('File01.mf4');
    tt = read(m);
    t1 = tt{1};
    t1.Properties.VariableDescriptions
    ans =
    
      1×2 cell array
    
        {'Signed_Int16_LE_Offset_32'}    {'Unsigned_UInt32_LE_Primary_Offset_0'}

参考

関数

トピック

外部の Web サイト