メインコンテンツ

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

blfread

Vector BLF ファイルからデータを読み込む

説明

mdata = blfread(blfFile) は指定された BLF ファイルからすべてのデータを読み取り、timetable の cell 配列を変数 bdata に返します。cell 配列内の各要素のインデックスは、ファイル内のデータのチャネル番号に対応します。

bdata = blfread(blfFile,chanID) は、指定されたチャネルのメッセージ データを BLF ファイルから読み取り、timetable を返します。

bdata = blfread(___,Name,Value) は、CAN データベースとメッセージ ID のパラメータ オプションによってフィルタリングされたメッセージ データを読み取ります。

すべて折りたたむ

CAN データベースを使用して、BLF ファイルからチャネル 2 のメッセージ データを読み取ります。

blfData = blfread("Logging_BLF.blf", 2, "Database", canDB)
blfData = 7575×8 timetable
       Time        ID     Extended           Name                        Data                 Length      Signals       Error    Remote
    __________    ____    ________    __________________    ______________________________    ______    ____________    _____    ______

    2.2601 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.2801 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.3002 sec     100     false      {'EngineData'    }    {[      238 2 25 1 0 0 238 2]}      8       {1x1 struct}    false    false 
    2.3005 sec     102     false      {'EngineDataIEEE'}    {[       0 128 59 68 0 0 0 0]}      8       {1x1 struct}    false    false 
    2.3006 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.3008 sec     201     false      {'ABSdata'       }    {[            0 0 0 0 172 38]}      6       {1x1 struct}    false    false 
    2.3009 sec    1020     false      {'GearBoxInfo'   }    {[                         1]}      1       {1x1 struct}    false    false 
    2.3201 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.3401 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.3502 sec     100     false      {'EngineData'    }    {[      4 0 25 2 119 1 238 2]}      8       {1x1 struct}    false    false 
    2.3505 sec     102     false      {'EngineDataIEEE'}    {[53 127 119 64 0 128 187 67]}      8       {1x1 struct}    false    false 
    2.3507 sec     201     false      {'ABSdata'       }    {[             0 0 0 0 35 40]}      6       {1x1 struct}    false    false 
    2.3508 sec    1020     false      {'GearBoxInfo'   }    {[                         1]}      1       {1x1 struct}    false    false 
    2.3601 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.3801 sec     103     false      {'Ignition_Info' }    {[                       1 0]}      2       {1x1 struct}    false    false 
    2.4002 sec     100     false      {'EngineData'    }    {[     10 0 25 3 119 1 238 2]}      8       {1x1 struct}    false    false 
      ⋮

オプションのフィルターを適用する他の形式の構文は次のようになります。

data = blfread("myfile.blf",2)
candb = canDatabase("testdb.dbc");

data = blfread("myfile.blf", "Database", candb)
data = blfread("myfile.blf", "Database", candb, "CANStandardFilter", 1:10)
data = blfread("myfile.blf", "Database", candb, "CANExtendedFilter", 3:7)
data = blfread("myfile.blf", "Database", candb, "CANStandardFilter", 1:10, ...
                                                "CANExtendedFilter", 3:7)
data = blfread("myfile.blf", "CANStandardFilter", 1:10, "CANExtendedFilter", 3:7)

入力引数

すべて折りたたむ

文字列または文字ベクトルとして指定された BLF ファイルへのパス。値には、現在のフォルダー内のファイル、相対パス名、または完全パス名を指定できます。

例: "MultipleChannelFile.blf"

データ型: string | char

BLF ファイルからデータを読み取るチャネル ID (数値スカラー値として指定)。指定しない場合は、すべてのチャネルが読み取られます。

例: 2

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

名前と値の引数

すべて折りたたむ

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。

例: "CANStandardFilter",1:8

メッセージのデコードに使用するデータベース。CAN、ARXML、または LIN Database オブジェクトとして指定されます。このオブジェクトは、canDatabasearxmlDatabase、または linDatabase 関数を使用して作成できます。

メッセージ標準 ID。インポートするメッセージを識別する数値の配列として指定されます。メッセージ ID は一般的なもので、CAN と CAN FD の両方のバス タイプに適用されます。値には、スカラー、または範囲または連続しない ID の配列を指定できます。デフォルトでは、すべての標準 ID メッセージがインポートされます。

例: [1:10 45 100:123]

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

メッセージ拡張 ID。インポートするメッセージを識別する数値の配列として指定されます。メッセージ ID は一般的なもので、CAN と CAN FD の両方のバス タイプに適用されます。値には、スカラー、または範囲または連続しない ID の配列を指定できます。デフォルトでは、すべての拡張 ID メッセージがインポートされます。

例: [1 8:10 1001:1080]

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

true または false として指定された絶対タイムスタンプを返します。true を指定した場合、返される timetable には datetime の絶対タイムスタンプが含まれます。false を指定した場合、返される timetable には、ファイルの最初のタイムスタンプからの経過期間の相対タイムスタンプが含まれます。デフォルト値は false で、相対タイムスタンプを返します。

例: AbsoluteTime=true

データ型: logical

データの読み取り間隔の開始時刻と終了時刻。2 要素のベクトルとして指定されます。AbsoluteTime=true の場合は、datetime ベクトルとして TimeRange を指定します。AbsoluteTime=false (デフォルト) の場合は、期間ベクトルとして TimeRange を指定します。指定しない場合は、すべてのデータ サンプルが読み取られます。このオプションを IndexRange と組み合わせることはできません。

例: TimeRange=seconds([0,60])

データ型: datetime | duration

データの読み取り間隔の開始インデックスと終了インデックス。2 要素のベクトルとして指定されます。インデックスは両端を含みます。指定しない場合は、すべてのデータ サンプルが読み取られます。このオプションを TimeRange と組み合わせることはできません。

例: IndexRange=[65:128]

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

メッセージ形式。"CAN" または "LIN" として指定されます。既定値は "CAN" です。メッセージのデコードにデータベース引数を指定する場合、このプロトコルと一致している必要があります。

例: ProtocolMode="LIN"

データ型: char | string

出力引数

すべて折りたたむ

BLF ファイルからのメッセージ データは、timetable の cell 配列として返されます。読み取るチャネルを 1 つ指定すると、timetable が返されます。

バージョン履歴

R2019a で導入

すべて展開する